【发布时间】:2014-05-12 12:38:44
【问题描述】:
我有一个范围闭包。
... function(scope) {
...
});
在范围内,我希望发生这种情况:
$scope.favoriteTitle = 'some value'
问题:favoriteTitle 不能是字符串。它必须是动态生成的(显然因为有很多这样的<item>Title 可能。
这是我目前所拥有的。
scope[var + 'Title'] = 'some value'
但这并没有将所需的值分配给范围变量。
我还使用batarang inspector 进行了检查,并确认没有将变量分配给范围。
我还在该属性上添加了$watch,并且oldvalue, and newvalue 都是undefined。
【问题讨论】:
-
也许你可以利用 angular.extend
-
您使用的是 scope 还是 $scope? $scope[var + 'Title'] = 'some value' 对我有用:fiddle
-
看来我的错。对此的调用函数有超时。超时似乎会产生一些问题,这些问题特定于我的场景,为了简洁起见,最初已从问题中删除
标签: javascript angularjs angularjs-directive angularjs-scope