在角度控制器中将对象键添加到对象

时间:2014-08-15 17:32:10

标签: angularjs object prepend

我认为这是一个javascript问题,但我不确定。

说我有这样的对象

   var foo = {
        foo1: 'name', 
        foo2: 'name2' 
    }

当我在控制台中使用角度调用时,帖子正文显示

{foo1: 'name', foo2: 'name2'}

太好了,这一切都很棒。

在我的后端虽然让我们说请求主体需要:

{type: {foo1: 'name', foo2: 'name2'}}

好的,所以在angular中,我在$ scope.type中有那个类型的键,在$ scope.foo中有foo对象

我试图通过

来实现这一目标
$scope.foo = {$scope.type:$scope.foo};
那不起作用,它只是说''。在$ scope.type中是不允许的。

然后我尝试设置var type = $ scope.type然后放

$scope.foo = {type: $scope.foo};

除响应帖之外有效的是'type'这个词,而不是实际值本身。 这里发生了什么?为什么我不能将键$ scope.type添加到我的foo对象?

1 个答案:

答案 0 :(得分:1)

您不能在名称类型的对象括号中使用动态值。 相反,你应该做这样的事情:

var obj = {};
obj[$scope.type] = $scope.foo;
$scope.foo = obj;