点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好
对不起,我的英语:)
我有一个带有可加载视图/控制器的组件的应用
在控制器初始化和其他方法中,我需要从服务器加载odata(读取odata),但是在成功处理程序中,我无法获得将新数据绑定到特定控件模型的视图。
我可以使用sap.ui.getCore()。byId('__ xmlview0--companies')通过完全ID直接执行完全操作(例如'__xmlview0--companies')的任何操作,这是' 正确的方法,我想直接获得控制权
如果我在成功读取函数中使用this.getView(),则" this"不是控制器,而是odataModel对象。
如果这可以帮助您
root.view.xml:
<输入id =" companies" showSuggestion =" true" showValueHelp =" true"/>
root.controller.js
sap.ui.define([ " sap/ui/core/mvc/Controller", " sap/ui/core/format/NumberFormat" ],函数(控制器,NumberFormat){ "使用严格"; return Controller.extend(" AppName.controller.root",{ onInit:函数(){ var myOdataModel = new sap.ui.model.odata.ODataModel('/mock/',true); myOdataModel.read('COMPANY',null,null,false,function(inutile,json){ var data = json.data.results; datas.companies =数据; var model = new sap.ui.model.json.JSONModel(); model.setData(datas.companies); var companiesInput = this.getView()。byId('companies'); companiesInput.setModel(model); });
Component.js:
sap.ui.define([ " sap/ui/core/UIComponent", " sap/ui/设备" ],函数(UIComponent,设备){ "使用严格"; 返回UIComponent.extend(" AppName.Component",{ 元数据:{ 清单:" json" }, 初始化:函数(){ UIComponent.prototype.init.apply(this,arguments); } }); });
一周热门 更多>