动态构造ACS对象

时间:2013-12-04 12:17:41

标签: javascript json node.js titanium acs

我正在使用Titanium Appcelerator和Node.ACS来管理我的服务器页面。我必须使用一些API来更新对象,这些对象基本上都是JSON对象。

我想做一个函数来更新一个对象的一个​​字段,但是不知道如何构造JSON配置。

这是我的代码:

function (id, field, value) {
    ACS.Objects.update({
        classname: MyObject,
        id: id,
        fields: {
            HERE_MUST_GO_THE_FIELD_NAME: value
        }
    }, function(data) {
        if (data.success) {
            console.log('Done');
        } else {
            console.log('Error');
        }
    });
}

我知道我可以通过以下方式创建一个属性:

var foo = {};
var bar = 'baz';
foo[bar] = '123';

但在这种情况下,我无法做出类似的事情:

    ACS.Objects.update({
        classname: MyObject,
        id: id,
        fields[field]: value
    }, function(data) {

因为它会抛出错误。那么,有没有办法做到这一点?

注意:显然,make:

        fields: {
            field: value
        }

不起作用,因为作为文字。

1 个答案:

答案 0 :(得分:0)

好吧,我几乎是傻瓜(差不多,因为我自己意识到了解决方案)。

它与标准相同,但更深刻:

                var config = {
                    classname: MyObject,
                    id: id,
                    fields: {}
                };
                config.fields[field] = value;
                ACS.Objects.update(config, function(data) {

我把它放在这里为其他像我这样的新手。