收藏
回答

自定义组件 attached 部分情况不触发

框架类型 问题类型 终端类型 微信版本 基础库版本
小程序 Bug 工具 7.0.4 2.7.0

- 当前 Bug 的表现(可附上截图)

  1. 组件 component1 属性列表有一个 show 类型为 Boolean,默认值为 true

properties: {
   show: {
     type: Boolean,
     value: true
   }
 },
<!--component1.wxml-->
<view>component1.wxml</view>
<component2 wx:if="{{show}}"/>

2. 页面 index 引用 component1,并传入 show 为 false

<view class="intro">
  <component1 show="{{false}}"/>
</view>

3.此时, 组件 component2 的 created,ready 会触发,attached 不会触发

- 预期表现

组件 component1 的 show 默认值是 true,外部传入为 false 时

最佳表现,应该是 component2 不会被创建,即所有生命周期都不触发

即使因为底层实现,默认值为 true 导致 created,ready 触发,也应该补上 attached,后续因为传入 false 时,再补上 detached 事件


- 提供一个最简复现 Demo
- 复现路径

https://developers.weixin.qq.com/s/L1PSWnm67y8Y

回答关注问题邀请回答
收藏
登录 后发表内容