目前我正在尝试:
module.directive('myDirective', function() {
return {
scope: { foo: '@' },
template: '{{foo}}',
link: function(scope) {
if (scope.foo != 'first' && scope.foo != 'second')
throw new Error("Only values 'first' and 'second' allowed for attribute 'foo' of myDirective");
}
};
});
但是有更多的角度"方式是什么?
答案 0 :(得分:0)
如果您有一组可以传递给指令的值(如枚举),则应该将此集设置为控制器和指令。
例如,如果只能传递某些颜色,则应创建颜色常量并在控制器和指令中注入此常量。从控制器中将它传递给指令,并在指令中检查颜色常量集合。
我不认为你可以让支票本身更容易,或者更像是有角度的方式'。但是,您可以创建一个工厂方法,以检查颜色是否是常量中的有效颜色。