窄门餐眼
窄门餐眼
  • 发布:2024-04-09 15:41
  • 更新:2024-04-09 16:00
  • 阅读:255

4.08 vue3 setup 下 watch 跟 onMounted 的问题

分类:uni-app

产品分类: uniapp/小程序/微信

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: mac os 14.3

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

基础库版本号: 4.08

项目创建方式: CLI

CLI版本号: 4.08

操作步骤:
watch(  
        () => props.data,  
        n => {  
            if (n !== null) {  
                state.planData = n;  
                state.selectItem = n[1];  
                emits('change', n[1]);  
            }  
        },  
        {  
            immediate: true,  
        },  
    );  

    onMounted(() => {  
        if (!props.data) {  
            initData();  
        }  
    });

预期结果:

onMounted 执行

实际结果:

不执行且报错

bug描述:

微信小程序端使用watch && immediate = true时且有onMounted时会报警告,onMounted也不会执行,报错说onMounted在外部被调用了,我删除了immediate 则正常执行,但是同样的代码我回退到 3.99, 则无问题

2024-04-09 15:41 负责人:无 分享
已邀请:
锦鲤丶接单丶

锦鲤丶接单丶 - 锦鲤丶接单丶18560000860丶10+年开发经验

好像setup中不能使用onMounted了,前两天我也遇到了,我改成onReady就没事了,不知道啥原因,跟你这情况有点类似

  • 窄门餐眼 (作者)

    要是 vue 官方的改动倒无所谓,这个估计就是bug

    2024-04-09 17:21

要回复问题请先登录注册