SAPUI5从本地存储向JSON模型添加数据

时间:2016-01-06 09:49:13

标签: json storage sapui5

我需要在本地存储中添加一些东西到我的JSONModel,我可以在view.xml中使用它。

在我构建JSON模型的函数中,我从本地存储中读取了我需要的数据。

de.fum.nmp.util.Storage.getItem("amountSync").done(function(amountSync) {
    amountSync = JSON.stringify(amountSync);
}).fail(function() { 
    var i = 0;
});

de.fum.nmp.util.Storage.getItem("newSyncTime").done(function(sSyncime) {
    aSyncTimes = JSON.stringify(sSyncime);
}).fail(function(sError) { 
    var i = 0;
});

这两个提供了我需要的两个数据字段。之后构建JSON模型,但是在我实现存储读取之前就已经发生了。

var oModel = new sap.ui.model.json.JSONModel(oData);
this.getView().setModel(oModel);

我如何确保将这些数据添加到JSON模型中呢?

1 个答案:

答案 0 :(得分:1)

您可以通过使用从localStorage中提取的数据设置模型的属性值来完成此操作。

Ex: this.getView().getModel().setProperty("/amountSync", amountSync );

amountSync 模型属性绑定到控件。

   var view = this;
   de.fum.nmp.util.Storage.getItem("amountSync").done(function(amountSync) {
     amountSync = JSON.stringify(amountSync);
     view.getView().getModel().setProperty("/amountSync", amountSync );
       }).fail(function() { 
        var i = 0;
     });

    de.fum.nmp.util.Storage.getItem("newSyncTime").done(function(sSyncime) {
        aSyncTimes = JSON.stringify(sSyncime);
        view.getView().getModel().setProperty("/aSyncTimes ", aSyncTimes );
      }).fail(function(sError) { 
        var i = 0;
     });