如何编写需要ng-model
或k-ng-model
的指令?文档没有涵盖这个:(
app.directive('myDir', function () {
return {
require: 'ngModel || kNgModel',
// omitted
};
});
答案 0 :(得分:3)
您需要将它们作为字符串数组传递。
您无法告诉Angular其中至少有一个需要可用,因此请将它们设置为可选项,如果其中一个可用,请检查链接功能。将您的代码更新为:
app.directive('myDir', function () {
return {
require: ['?ngModel', '?kNgModel'],
link: function(scope, element, attrs, controllers){
if(!controllers[0] && !controllers[1]){
throw 'myDir expects either ng-model or k-ng-model to be defined';
}
}
};
});