在Page页中,通过@Provide(“stackManager”)声明了一个StackManager对象(类似这种),并在Page页包含的各个子组件中用@Consume接收并使用。然后需要通过@CustomDialog显示一个类似Page页的Widget浮窗,也需要有自己的StackManager对象。这时如果通过@Provide(“stackManager”)声明,并提供给Widget的子组件使用时,报jscrash:Property with this name is provided by one of the ancestor Views already. @Provide override not allowed崩溃。
看起来像是Page和Page页上的这个浮窗用的同一个父节点,由于Page页已经声明provide了,所以不能再次声明。而如果用@Consume与Page用一个的话,会导致生命周期全乱掉。
把@CustomDialog内部的Provide与Consume做成隔离的是否可行?或者能否提供一种其他的实现
参考文档;https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/quick-start/arkts-provide-and-consume.md\#provide%E6%94%AF%E6%8C%81allowoverride%E5%8F%82%E6%95%B0