【发布时间】:2015-10-18 22:08:07
【问题描述】:
最初在控制器中设置为 false
$scope.isChangeUnsaved = false;
视图中的值
Changes Status : {{isChangeUnsaved }} // false initially
我正在尝试更改指令中 ngModel 的值。该值已更改,但未反映在视图中。这是我正在使用的代码
<form ngc-reload ng-model="isChangeUnsaved">
指令
angular.module("biApp").directive("ngcReload", ["$parse","$log", function ($parse,$log) {
return {
restrict: "A",
scope: {
ngModel:"="
},
link: function(scope, element, attrs, controller){
$JQ(".mainmenu a").click(function(e){
e.preventDefault();
scope.$apply(function() {
scope.ngModel = !scope.ngModel;
});
console.log("scope.ngModel",scope.ngModel); // Outputs true - value is changed
});
}
}
}]);
值不变
Changes Status : {{isChangeUnsaved }} // false even after changed in directive
【问题讨论】:
-
尝试将“ngModel”更改为另一个词。我认为“ngModel”是框架中的保留字
-
@Pilot .. 它不起作用。 ngModel 已经从指令属性传递了 isChangeUnsaved
-
在表单标签上放置一个独立的范围指令是个坏主意。
ng-form可能存在重大问题,这是一个复杂的指令。为什么还要使用ng-model?这没有意义 -
sorry sorry...我确实阅读了您的代码
标签: angularjs directive angular-ngmodel