3***@qq.com
3***@qq.com
  • 发布:2024-10-16 17:21
  • 更新:2025-06-09 19:22
  • 阅读:444

【报Bug】vue3,微信小程序端,default作用域插槽在不访问子组件数据时,无法展示default插槽内容

分类:uni-app

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

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Windows 11, version 24H2(26100.2033)

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

基础库版本号: 3.6.2

项目创建方式: CLI

CLI版本号: 3.0.0-4020920240930001

示例代码:

子组件代码,提供了两个作用域插槽:

<template>  
    <div>  
        我是子组件1  
        <view><slot :text="text"></slot></view>  
        <view><slot name="other" :text="text"></slot></view>  
    </div>  
</template>  

<script>  
export default {  
    data() {  
        return {  
            text: '你好'  
        };  
    }  
};  
</script>

页面代码:

<template>  
    <test1>  
        <template #default>default内容</template>  
        <template #other>other内容</template>  
    </test1>  
</template>  

<script setup lang="ts">  
import test1 from './test1.vue';  
</script>

操作步骤:
  1. 解压附件后,安装依赖,运行命令:npm run dev:mp-weixin;
  2. 微信开发者工具打开对应平台目录,首页即可复现;
  3. 测试页面路径:src\pages\index\index.vue

预期结果:

default作用域插槽无论是否访问子组件数据,内容都可以正常渲染

实际结果:

default作用域插槽不访问子组件数据时,内容无法渲染

bug描述:

vue3,微信小程序端,如果子组件提供了default作用域插槽,使用时,若不访问子组件的数据,则该default插槽内容就无法展示,
如果是其他具名插槽,同样的用法却能正常展示。
H5端都可正常展示。

代码示例已上传附件。
node版本号:16.16.0

2024-10-16 17:21 负责人:无 分享
已邀请:
1***@qq.com

1***@qq.com

我也遇到了相似的问题,封装的通用组件中含有普通默认插槽,如果父组件使用 <template #default>的方式,倒不是展示不出来,但是数据就乱了,而且比如动态类名(三元字符串形式)等也是不生效的,把<template #default>去掉就可以了。

  • DCloud_UNI_OttoJi

    三元字符串形式是什么意思,给个 demo

    2025-01-02 19:41

DCloud_UNI_JBB

DCloud_UNI_JBB

感谢反馈,此问题为已知问题,会于近期修复

要回复问题请先登录注册