SAP UI5 确保控件 id 全局唯一的实现方法
JerryWang_汪子熙 -Support for Unique IDs
stable ID 用于在运行时识别和修改控制器内的控件。 但是,如果您重用或嵌套这些视图,这些 stable ID 将不再是唯一的。 为了避免 id 冲突,每个 SAP UI5 视图都将自己的 ID 作为前缀添加到其所有子控件中。
看一个例子,下面这个 xml 视图里,Button 控件的 id 为:aButton
<mvc:View viewName="sap.hcm.ButtonView" controllerName="sap.hcm.myController" xmlns="sap.m" xmlns:mvc="sap.ui.core.mvc">
<Button id="aButton" text="Click me"/><mvc:View>
然后我定义了另一个 xml 视图,把上面这个包含了 button 控件的 xml 视图,嵌套进去:
<mvc:View viewName="sap.hcm.ContainerView" controllerName="sap.hcm.Address" xmlns="sap.ui.commons" xmlns:core="sap.ui.core"
xmlns:html="http://www.w3.org/1999/xhtml">
<mvc:View id="ButtonView1" viewName="sap.hcm.ButtonView"/>
<mvc:View id="ButtonView2" viewName="sap.hcm.ButtonView"/>
<mvc:View>
运行时,两个被嵌套的 xml 视图 id 为:
myContainerView--ButtonView1myContainerView--ButtonView2获取这些嵌入 xml 视图实例的代码:
var oButtonView1 = oView.byId("ButtonView1");
获取每个 xml 视图实例里的 button 实例的代码:
var oButton = oButtonView1.byId("aButton");
特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。
下一篇: 3D可视化打造智慧工厂数字化管理