- 当前 Bug 的表现(可附上截图)
Error: Expect END descriptor with depth 0 but get another
- 预期表现
不会出错
- 复现路径
Index页面结构:
-- CompA
--- CompB
场景:
CompA的wx:if由Index决定
CompB的wx:if由CompA决定
如果CompA关闭了,但是CompB的wx:if条件还在执行 =》 触发Bug
真实场景就是
CompA在2s会显示CompB的内容
但是如果CompA2s以内被关了,那么CompB就出错
详见代码片段
- 提供一个最简复现 Demo
自行代码片段
微信小程序开发问题解答
微信小程序开发者回答:
我先来一个临时的解决办法吧
既然我们知道如果CompB的wx:if判断时候CompA已经卸载了,那么就会出现Bug。
那我们就可以在CompB的wx:if里多一个判断,判断CompA是否被卸载
如何判断?
只要在CompA的attached生命周期和dettached生命周期里设置一个开关就行,亲测可以临时解决
更粗暴一点?
如果CompA有引用组件,组件的父层(不限层级)有wx:if
那么,我们在CompA的最顶层进行判断就可以
只不过,作为临时方法,非常的不友好
本文网址:http://www.91bianli.com/weixinxiaochengxu/8273.html