a_c1121
a_c1121
  • 发布:2021-05-24 15:42
  • 更新:2021-06-15 11:59
  • 阅读:1226

【报Bug】抖音更新新版本基础库后,uniapp provide inject API失效,通过slot的父子层级组件关系混乱.

分类:uni-app

产品分类: uniapp/小程序/字节跳动

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 10.14.6

第三方开发者工具版本号: 3.0.9

基础库版本号: 2.6.0.9及以上

项目创建方式: CLI

CLI版本号: 2.0

操作步骤:

1.编写slot层级的父子组件,然后使用provide inject API
2.打开头条开发者工具使用2.6.0.9及以上基础库
3.打印 inject的父组件实例, 和 组件实例 this
4.层级混乱

预期结果:

通过slot搭建的组件父子层级正常,provide inject API使用正常

实际结果:

头条开发者工具2.6.0.9及以上基础库 组件层级错乱, 所有孙子组件和父组件在一个层级, $parent也可能是莫名其妙的无关系组件

bug描述:

抖音更新新版本基础库后,uniapp provide inject API失效,通过slot的父子层级组件关系混乱.

首先是provide inject api失效 找不到实例的引用
然后发现打印出来的实例的$parent $children 是错误的,应该是slot层级组件编译后出错
如下图,formItem父组件竟然是icon

2021-05-24 15:42 负责人:DCloud_UNI_GSQ 分享
已邀请:
Thck

Thck

this.$refs 在子组件声明周期中都获取不到 需要延迟获取

  • a_c1121 (作者)

    是的 有时候延迟也获取不到

    2021-05-24 16:52

a_c1121

a_c1121 (作者)

没人回答么 管理员呢?

DCloud_UNI_GSQ

DCloud_UNI_GSQ

先切换旧版本基础库,后续会进行兼容

DCloud_UNI_GSQ

DCloud_UNI_GSQ

HBuilderX alpha 3.1.19 已修复

该问题目前已经被锁定, 无法添加新回复