sap.ui.getCore().byId() 不返回任何元素



我创建了一个 UI5 应用程序,现在想使用 sap.ui.getCore().byId(id) 来访问现有控件。在同一个控制器/视图中,我可以通过this.byId(id)访问它们,但要访问其他文件(例如控制器)中的控件,我需要sap.ui.getCore().byId(id)

但是,虽然sap.ui.getCore()返回一个核心对象,但我无法通过它的byId()函数访问控件,而是得到undefined。我已经构建了一个 UI5 应用程序,并且对此函数调用没有问题。

我必须配置一些东西才能正常工作吗?

如果你查看视图的 byId -方法,你可以看到它在视图 ID 前面,它本质上调用sap.ui.getCore().byId(this.createId(id))

这样您就可以多次实例化视图,而不会有重复的 ID。为了从外部访问控件,您要么需要视图以便可以调用 view.byId(id) ,要么必须手动将视图的 ID 与 ID 连接起来,如下所示:sap.ui.getCore().byId(viewId + "--" + id)

最新更新