UI5设置/获取全局模型

2020-08-24 10:51发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我已经阅读了几篇有关使用Glob...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我已经阅读了几篇有关使用Global模型的文章,并且似乎有许多方法可以做到这一点,无论是对还是错。 我现在避免在清单中定义我的模型,而是选择直接在component.js中定义它。 我正在使用的代码如下:

在component.js的onInit中:

//var oModel1 = new sap.ui.model.json.JSONModel(" model/Testmodel.json");
 var oData = {测试:{名称:"世界"}};
 var oModel1 = new sap.ui.model.json.JSONModel(oData);
 sap.ui.getCore()。setModel(oModel1," oModelTest");
 

在View Controller.js中,我在onInit函数中包含以下代码:

 var oModel = sap.ui.getCore()。getModel(" oModelTest"); 

但是,在调试中进行监视时,oModel显示为未定义。 它不会出错。 我还尝试使用变量oModel1,因为有人提到名称在set/get的两端应该相同。 但是可惜是同样的问题。

有人提到理想情况下,我们不应使用核心来设置/获取全局模型。 我很高兴看到如何使它工作,并且在可能的情况下不使用内核。

如果任何人都可以使用,我将不胜感激一些演示代码。

最诚挚的问候

7条回答
歪着头看世界
2020-08-24 11:33

请不要使用" sap.ui.getCore ().getModel()"。 而是在清单中定义模型。 您可以使用" this.getOwnerComponent()。getModel()"从每个视图的控制器清单中访问所有模型

在每个控制器中,您还可以使用" this.getView"创建其他模型 ().setModel()"和" this.getView()。getModel()"。

希望有帮助。

亲切的问候,

Wouter

一周热门 更多>