【发布时间】:2016-12-22 06:47:17
【问题描述】:
我创建了一个自定义指令,使用隔离范围进行数据绑定。
我正在从父级广播事件以更改其中一个变量值,然后将此更改后的值绑定到为指令定义对象中的双向绑定定义的变量。如下所示:-
$scope.$on('updateData', function(event, data) {
//some code
$scope.datatosend = **NEW_VALUE**;
});
return {
restrict : 'E',
replace : 'true',
scope : {
datatoload : "=",
datatosend : "=", // assigning updated value to this variable
setFn : '&'
},
<locationgrid datatoload="location" datatosend="finaldata"></locationgrid>
在父模板中使用了指令'locationgrid'。
这个变量反映了父 html 模板上的变化,因为我尝试将该变量设置为文本框之一的 ng-model。
但是这个更新的值并没有反映在父控制器中。它在父控制器中给出“未定义”,但可以在父 html 模板中看到更新的值。
请帮助已经花了很多时间,但都是徒劳的,尝试了 $scope.$watch,$scope.$apply,$timeout.任何帮助表示赞赏。
【问题讨论】:
标签: angularjs data-binding angularjs-directive