🚀 问题描述
在 uni-app
中开发自定义组件时,遇到了快手小程序渲染 slot
异常的问题。在 Web 和微信小程序中,slot
表现正常,但在快手小程序中表现不一致。
🧐 问题分析
- 组件内部
v-for
渲染slot
,不同平台表现不一致。 - 微信小程序会警告 “More than one slot named…”,说明相同
slot
名称在同一个组件实例中多次使用,会导致渲染异常。 - 发现快手小程序不支持
v-for
内部的slot
,导致插槽数据绑定混乱。
✅ 解决方案
不要在自定义组件内部 v-for
生成 slot
,而是在父组件 v-for
渲染多个相同的自定义组件。这样可以确保 slot
只出现一次,保证不同平台的表现一致。