我在AngularJS中使用了一个指令,我试图检查我的字段是否是$ dirty,如果这是真的我想记录一条消息,当它发生变化时我想显示另一条消息(这句话稍后将被替换为更复杂的东西)。Angular指令不看
我想在所有的输入中重用我的指令,但我不能。提前致谢。
<input ng-edited ng-model="stakeholder.nombre" name="nombre" type="text">
我的指示是:
MetronicApp.directive('ngEdited', function() {
return {
restrict: 'A',
require: ['^form', 'ngModel'],
link: function (scope, elem, attrs, req) {
scope.elemDirty = req[1].$dirty;
scope.elemName = req[1].$name;
var doFunction = function() {
if (scope.elemDirty) {
console.log("true");
} else {
console.log("false");
}
};
scope.$watch(scope.elemName, doFunction, true);
}
};
});
我不确定在这个例子中'req [1]'是什么。通常一个控制器作为第四个参数传递给链接函数。 – Claies
@Claies我正在发送第4个arg中的两个项目:form和ngmodel,你可以在require中看到它 –