【关键字】
子窗口 / 全局弹窗组件 / setUIContent
【问题描述】
通过子窗口来设计实现一个全局弹窗组件
1、entry的Ability中创建的子窗口能否应用HSP中的page呢?我们尝试了loadContentByName发现子窗口是白屏,但setUIContent是可以正常加载的。
2、子窗口能否禁用外部区域的点击事件。
【解决方案】
1、可以应用。setUIContent没问题是因为使用了相对目录,从目录读取的,而不是从HSP读取的page请从以下方面检查下loadContentByName为什么子窗口是白屏。
a)HSP包中的page是不是使用export关键字。
b)在Run COnfiguration的时候Deploy Multi Hap有没有选择lirary。
c)有没有在entry页面中导入对应的lib包中的page, import * as Index from "lib/src/main/ets/pages/Index" 类似这种。
d)有没有在oh-pakage.json5中导入对应的依赖 “dependencies”: {"lib": "file:./src/main/ets/lib/librart.har"}。
2、不能禁用点击事件,只能监听, 可以自己再加一层实现类似于禁用的效果, 按照自己的设计对应实现。