浏览器控制台内没有响应的主题“疑难解答”

时间:2019-04-01 19:54:43

标签: sapui5

我无法按照浏览器开发人员工具的UI5文档主题Troubleshooting中所述进行操作。

我已经输入了代码,但是没有看到响应。

myView=sap.ui.getCore().byId("HeapOfShards---app").
myView.byId("myButton").

No response

1 个答案:

答案 0 :(得分:0)

问题1

从文档中粘贴代码段时,您需要省略句号(.)。
否则,控制台将认为该表达式不完整,因此没有响应。

但是仅省略句号将导致错误myView未定义。请参见问题2

问题2

自UI5 1.61.0开始,示例代码(id="HeapOfShards")中的组件从父ComponentContainer(id="container")获得了一个附加的自动前缀ID。因此,当像主题中那样通过全局ID访问根视图时,需要在ComponentContainer的ID之前添加

myView = sap.ui.getCore().byId("container-HeapOfShards---app");
myView.byId("myButton");

这显然是一个文档问题,需要解决。 更新:现在fixed

为什么不起作用

在1.61中,故障排除的示例代码从通过内联脚本创建ComponentContainer到通过模块sap/ui/core/ComponentSupport声明式创建。 commit

.byId("HeapOfShards---app")突然失败的原因是ComponentSupport在创建ComponentContainer时预先设置了几个设置,其中autoPrefixId默认为true src

直接没有创建ComponentContainer时,默认情况下autoPrefixIdfalse,这就是为什么在以前的版本中都很好的原因。