Angular JS - 将对象内部的键作为变量

时间:2016-08-18 15:27:34

标签: angularjs

我有一个变量和一个范围,以便在Angular中应用过滤器:

var tochange = "Ferrari";
$scope.filter = { cars :{ tochange : true}};

当我在范围之外更改其值时,我希望范围内的tochange变量更改,但是使用此代码时,它不能按预期工作。您可以查看JSfiddle here

编辑:更改了jsfiddle网址,现在它应该可以正常工作。

谢谢!

1 个答案:

答案 0 :(得分:4)

您可以使用括号表示法将变量用作键,但您必须单独声明该对象(除非您可以使用某些ES6语法)

var tochange = "Ferrari";
var obj = {};
obj[tochange] = true;
$scope.filter = { cars : obj};

或ES6:

$scope.filter = { cars :{ [tochange] : true}};