我需要在按钮JSONModel处理程序中向press添加一个对象。JSONModel在应用描述符(manifest.json)中初始化,如下所示:
"models": {
"invoice": {
"type": "sap.ui.model.json.JSONModel",
"uri": "model/Invoices.json"
}
}this.getOwnerComponent().getModel("invoice").data.push({/*...*/});发布于 2019-04-30 09:06:52
如果模型已经在您的清单中可用,并且属性已经存在,您可以添加如下所示的项:
单击事件时控制器中的:
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**:**下的舱单中的
"dataSources": {
"invoice": {
"uri": "./model/Invoices.json",
}
}
....
"models": {
"invoice": {
"type": "sap.ui.model.json.JSONModel",
"dataSource": "invoice"
}
}发布于 2019-04-30 08:52:22
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);发布于 2019-05-03 09:56:37
我找到了答案,我们应该使用push var obj= {};
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); https://stackoverflow.com/questions/55905272
复制相似问题