【发布时间】:2013-09-29 10:05:27
【问题描述】:
html
<input type="text" name="usernr" ng-model="userNr" placeholder="user nr"
tabindex="2" ng-usernumber/>
javascript
app.directive('ngUserNumber', function() {
return {
restrict: 'A',
require: 'ngModel',
link: function(scope, elm, attrs, ctrl) {
console.log("inside directive");
ctrl.$parsers.push(function(data) {
console.log("//convert data from view format to model format");
data = data.toString() + " test";
return data; //converted
});
ctrl.$formatters.push(function(data) {
console.log("//convert data from model format to view format");
data = data.toString() + " test";
return data; //converted
});
}
};
});
我想用指令内部的数据替换 ng-model 提供的数据。但什么也没有发生。为什么不使用自定义指令?
我关注了这个文档:http://www.ng-newsletter.com/posts/directives.html
其他来源:https://stackoverflow.com/a/15346236/489856
【问题讨论】:
-
链接函数是否被调用\执行?
-
否(不执行日志)
-
你在html中的指令名应该是
mg-user-number -
错字?
ng-usernumber将被规范化为ngUsernumber而不是ngUserNumber。 -
@rogerz jep 就是这样
标签: angularjs