是否可以在Angularjs控制器中的json对象中传递$ scope.value?

时间:2017-01-24 19:58:29

标签: javascript html angularjs json api

我有一个定义了json对象的var数据。我想从html动态更改json字段并调用稍微不同的POST API。 e.g:

var data={
    $scope.value:'25',
    'speciality':$scope.speciality,
    'field2':'something',
    'field3':'something else'
}

如何更改$ scope.value可以有10到15个不同的值。 我试过了,

var example=$scope.value;
var data={
  example:'25',
  'speciality':$scope.speciality,
  'field2':'something',
  'field3':'something else'
}
But this too doesn't work and sends example as json field.

任何帮助都是适用的。 感谢

3 个答案:

答案 0 :(得分:0)

不,你不能拥有动态变化的密钥。您最好的选择是在您需要时构建对象:

var obj = {};
obj[$scope.value] = 25;
...

答案 1 :(得分:0)

如果要将变量用作属性名称,则必须先创建对象,然后使用方括号表示法分配数据。

var data = {   
        'speciality':$scope.speciality,
        'field2':'something',
        'field3':'something else'
    }

data[$scope.value] ='25';

答案 2 :(得分:0)

var data = {
    'field2':'something',
    'field3':'something else'
};
$scope.value.forEach(function(value) {
    data[value] = '25';
});