在指令中,是否可以使用字符串值将范围内的变量作为目标?



>我正在处理一个指令,我需要在作用域上设置一个变量,但我所要做的就是一个描述变量路径的字符串值:

var toChange = "targetObj['targetProp']";

很久以前,我问了一个关于在已知对象中查找嵌套属性的问题(并得到了有效的答案(,但还没有成功地利用它来查看范围......有没有办法基本上走这条路并在示波器上找到它?这不起作用,但大致如下:

错误

scope.toChange = newValue;

另一种方法是使用$scope.$eval

var toChange = "targetObj['targetProp']";
var target = $scope.$eval(toChange);
target = newVal;

有关详细信息,请参阅

  • AngularJS $scope/$rootScope API 参考 - $eval

其实我想通了,对不起大家!

var x = $parse(toChange);
x.assign(scope, newVal);

最新更新