SAPUI5 在 JSON 模型 2 中使用来自 JSON 模型 1 的值
Posted
技术标签:
【中文标题】SAPUI5 在 JSON 模型 2 中使用来自 JSON 模型 1 的值【英文标题】:SAPUI5 use value from JSON Model 1 in JSON Model 2 【发布时间】:2021-03-18 09:09:28 【问题描述】:我可以在第二个 JSON 模型中使用/绑定来自第一个 JSON 模型的值吗? 在下面的示例中,第二个模型 (MyNamedModel) 中第一项的文本应为“Apple”。
完整的例子可以在这里找到:https://plnkr.co/edit/WtStoqxsjUAfC9Ia
var oFruits =
first: "Apple",
second: "Banana"
var oFruitModel = new JSONModel(oFruits);
this.getView().setModel(oFruitModel, "FruitModel");
var oData =
"items": [
Key: "A",
Text: "path: '/FruitModel>/first'",
Icon: "sap-icon://nutrition-activity"
,
Key: "B",
Text: "Paper Plane",
Icon: "sap-icon://paper-plane"
,
Key: "C",
Text: "Vacation",
Icon: "sap-icon://general-leave-request"
]
;
var oMyModel = new JSONModel(oData);
this.getView().setModel(oMyModel, "MyNamedModel");
用例: 实际上,我有一个 geoMap 控件,其中 mapConfiguration 在 JSONModel 中,我想从后端获取一个特定的参数值 (URL) 并在 mapConfiguration 中使用它。
【问题讨论】:
【参考方案1】:是的,你可以绑定它。 对于以下示例,它将如下所示:
var oData =
"items": [
Key: "A",
// Text: "Apple",
Text: this.getView().getModel("FruitModel").getData().first,
Icon: "sap-icon://nutrition-activity"
]
;
基本上通过this.getView().getModel("FruitModel").getData()
语句,您可以从“FruitModel”获得对整个结构的访问权。此外,您可以随意分配它的值。
这也是您的工作示例https://plnkr.co/edit/7EO3qaXPpHX5QUZM
【讨论】:
以上是关于SAPUI5 在 JSON 模型 2 中使用来自 JSON 模型 1 的值的主要内容,如果未能解决你的问题,请参考以下文章