无法使用其他SearchField来工作

时间:2014-07-22 16:16:51

标签: ibm-mobilefirst jsonstore

jsonStoreInit = function(pSuccess, pFailure){
    collections={};
    collections['objects'] = {};

    var options = {};
    options.localKeyGen = false;
    options.clear = false;
    options.username = app.username;
    options.password = app.password;
    options.additionalSearchFields = {key: 'string'};

    WL.JSONStore.init(collections, options)
    .then(pSuccess)
    .fail(pFailure);
};


putObject = function(pObject) {
    var keyValue = pObject.getKey();
    var object = {myObject : pObject.getKey()};
    var options = {}; 
    //options.additionalSearchFields = {key : keyValue};

    WL.JSONStore.get("objects")
    .add(object, options);
};

我在WL 6.0 FP 1上 在上面的代码示例中,jsonStoreInit是我用来初始化我的商店的,包括options.additionalSearchFields。

当我在putObject函数中添加对象时,它可以正常注释掉additionalSearchFields,但是当我取消注释它以添加其他字段时我会收到错误

[wl.jsonstore] {"src":"store","err":21,"msg":"INVALID_ADD_INDEX_KEY","col":"objects","usr":"xxxx","doc":{},"res":{}} 

当我看到这个错误信息时,我得到的是

21 INVALID_ADD_INDEX_KEY
Problem with additional search fields.

我有点想到......任何人都可以提供任何帮助...... 我不需要你修改我的代码,但如果你能指出一个非常好的工作实例。

非常感谢,拥有图片

1 个答案:

答案 0 :(得分:0)

提出问题的人解决了这个问题,但是我想离开这个答案,以防有人想知道如何传递使用additionalSearchFields的数据。

示例:

var data = {hello: 'world'};
WL.JSONStore.get('collection').add(data, {additionalSearchFields: {key: 'value'}})

该示例假设使用hello的搜索字段string创建了集合,并将key的其他搜索字段设置为string。它还假设有一个名为collection的初始化集合。