首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何向JSONModel添加项

如何向JSONModel添加项
EN

Stack Overflow用户
提问于 2019-04-29 14:17:18
回答 3查看 2.7K关注 0票数 0

我需要在按钮JSONModel处理程序中向press添加一个对象。JSONModel在应用描述符(manifest.json)中初始化,如下所示:

代码语言:javascript
复制
"models": {
  "invoice": {
    "type": "sap.ui.model.json.JSONModel",
    "uri": "model/Invoices.json"
  }
}
代码语言:javascript
复制
this.getOwnerComponent().getModel("invoice").data.push({/*...*/});
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-04-30 09:06:52

如果模型已经在您的清单中可用,并且属性已经存在,您可以添加如下所示的项:

单击事件时控制器中的

代码语言:javascript
复制
var newItem = {
  "ProductName": "test add",
  "Quantity": 21,
  "ExtendedPrice": 87.2000,
  "ShipperName": "Fun Inc.",
  "ShippedDate": "2015-04-01T00:00:00",
  "Status": "A"
};
var oModel = this.getOwnerComponent().getModel("invoice");
oModel.setProperty("/Invoices", oModel.getProperty("/Invoices").concat(newItem));

datasources models**:**下的舱单中的

代码语言:javascript
复制
"dataSources": {
  "invoice": {
    "uri": "./model/Invoices.json",
  }
}
....
"models": {
  "invoice": {
    "type": "sap.ui.model.json.JSONModel",
    "dataSource": "invoice"
  }
}
票数 4
EN

Stack Overflow用户

发布于 2019-04-30 08:52:22

代码语言:javascript
复制
var oModelInvoice = this.getOwnerComponent().getModel("invoice");
var obj = {
 "ProductName": "test add",
 "Quantity": 21,
 "ExtendedPrice": 87.2000,
 "ShipperName": "Fun Inc.",
 "WeightUnit" : "G",
 "ShippedDate": "2015-04-01T00:00:00",
 "Status": "A" 
}:

oModelInvoice.setProperty("/myObject", obj);
票数 0
EN

Stack Overflow用户

发布于 2019-05-03 09:56:37

我找到了答案,我们应该使用push var obj= {};

代码语言:javascript
复制
         obj.ProductName = "test add me";
          obj.Quantity = 120;
          obj.Status = "C";

         var oModel = this.getModel("invoice");
         var localdata = oModel.getData();
         localdata.Invoices.push(obj);
         oModel.setData(localdata); 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55905272

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档