[英]Angular - Directive not working
我是Angular的新手。 不知道為什么指令在下面不起作用。 搜索了一些文章。 沒有任何幫助
angular.module('oneApp', []).controller('OneAppController', function($scope){
//Some Logic
}).directive('dvReplaceText', ['$interval', '$compile', function($interval, $compile) {
return {
restrict: 'A',
link: function(scope, element, attr) {
scope.$watch(scope.data, function(value) {
element.html(value);
});
}
}
}]);
HTML :
<body ng-app="oneApp">
<div ng-controller="OneAppController">
<input class="input-data-box" ng-model="data" dv-replace-text=""/>
</div>
</body>
應該:
scope.$watch('data', function(value) {
...
});
您應該這樣更改$ watch:
scope.$watch('data', function(value) {
element.html(value);
console.log(value);
});
這樣嘗試
angular.module('oneApp', []).controller('OneAppController', function($scope){ //Some Logic }).directive('dvReplaceText', ['$interval', '$compile', function($interval, $compile) { return { restrict: 'A', link: function(scope, element, attr) { scope.$watch("data", function(value) { //element.value(value); console.log(value); }); } } }]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> <body ng-app="oneApp"> <div ng-controller="OneAppController"> <input class="input-data-box" ng-model="data" dv-replace-text=""/> </div> </body>
var app=angular.module('myApp', []);
app.controller('OneAppController', function($scope){
//Some Logic
console.log("data loaded");
});
app.directive('dvReplaceText', function() {
return {
link: function(scope, element, attr) {
scope.$watch(scope.data, function(value) {
element.html(value);
});
}
}
});
的HTML
<div ng-controller="OneAppController">
<input class="input-data-box" ng-model="data" dv-replace-text/>
</div>
這是工作模型JSFIDDLE LINK
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.