在指令中,您可以通过arg设置方法回调,例如:
<my-directive callback='showAlert()' />
您可以通过返回中的作用域设置来检索变量:
scope: {
callback: "&callback"
}
如果未设置回调,例如:
<my-directive />
$ scope.callback的值仍然是:
$scope.callback():function (locals) {
return parentGet(scope, locals);
}
有没有一种好的方法来检查未设置回调?
最佳答案
我可以考虑的一种方法是检查指令名称的属性参数,例如
link: function (scope, elm, attrs) {
if(attrs.callback) {
//this attribute has been defined.
}
}