我有一个像我这样的范围值的字符串引用:
var reference_string = "form.name";
我想为它引用的对象分配一个值:
$scope.form.name = 'newvalue';
环顾四周,我发现了两种可能的解决方案:using plain JS或使用角度$parse功能。
但是,似乎$ parse函数只返回值。我可以制作它以便分配新值吗?
即。我想做像
这样的事情var reference_string = "form.name";
var reference = getReference($scope, reference_string); // ideally using an angular in-built function like $parse
reference = 'newvalue'; // should have the same effect as $scope.form.name = 'newvalue';
答案 0 :(得分:-1)
$ parse是一个Angular服务,它将表达式转换为函数。然后可以调用该函数并传递上下文(通常是作用域)以检索表达式的值。 此外,如果表达式是可赋值的,则返回的函数将具有assign属性。 assign属性是一个函数,可用于更改给定上下文中的表达式值。