genda_0927
genda_0927
  • 发布:2022-09-13 20:20
  • 更新:2022-09-17 22:54
  • 阅读:1096

【报Bug】3.5.3 $nextTick无效,自定义组件class不生效

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

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

HBuilderX类型: 正式

HBuilderX版本号: 3.5.3

手机系统: iOS

手机系统版本号: iOS 13.4

手机厂商: 苹果

手机机型: iPhone x

页面类型: nvue

vue版本: vue3

打包方式: 离线

项目创建方式: HBuilderX

示例代码:

this.$nextTick(() => {
console.log('----> --------- ' + typeof this.$refs['ke']);
})

操作步骤:

运行附件项目即可出现

预期结果:

1、通过 $nextTick 可获取到正确的 ref 实例
2、自定义组件可通过 class 设置 style

实际结果:

1、$nextTick 获取的 ref 为 undefined
2、自定义组件设置 class 无效

bug描述:

1、 onload 周期中 $nextTick 无效,设置ref 在 $nextTick 后获取的 ref 为 undefined
详见 附件项目 中 index.vue 页面的 onLoad 方法。

2、 自定义组件 设置的 class 没有生效,必须使用 style 进行设置
详见 附件项目 中 index-page.vue。(从 index.vue 页面,点击 uni logo 图片进入)

2022-09-13 20:20 负责人:无 分享
已邀请:
DCloud_UNI_WZF

DCloud_UNI_WZF

通过你提供的测试工程,测试 ref 可以拿到值
样式问题属于样式冲突,和 @include level-center 相关
建议以后提供测试工程,提供最简可复现demo(也就是不生效或者有问题的部分)

  • genda_0927 (作者)

    麻烦您再看下,我下面评论中,新上传的已简化的附件工程,问题还是存在的

    2022-09-15 12:11

genda_0927

genda_0927 (作者)

我简化了 测试工程,问题还是存在的,新工程见附件

DCloud_UNI_WZF

DCloud_UNI_WZF

测试获取 ref 和 title 数据未复现该问题,nvue3 组件嵌套 class 失效问题复现
nvue3 不建议多级组件嵌套并在父级设置样式

  • genda_0927 (作者)

    测试获取 ref 和 title 数据未复现该问题

    我测试了其他ios机型,也没有这个问题,但是下方评论图片中的机型有这个问题。

    2022-09-16 21:25

genda_0927

genda_0927 (作者)

这个型号出现,nextick 无效的问题

DCloud_UNI_WZF

DCloud_UNI_WZF

ios 13 复现 onLoad 中 $nextTick 中获取 $refs undefined 问题,建议将获取 $refs 逻辑放在 onReady 或 mounted 中

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