// /components/test/test.vue,使用了作用域插槽
<template>
<view>
<slot name="list" :slotList="list"></slot>
</view>
</template>
<script>
export default {
name:"test",
props: {
list: {
type: Array
}
},
data() {
return {
}
}
}
</script>
// /components/other/other.vue,普通组件
<template>
<view><slot></slot></view>
</template>
<script>
export default {
name: 'other',
data() {
return {}
}
}
</script>
// /pages/test/test.vue,测试页面
<template>
<view>
<!-- 放在外层的test组件 -->
<test :list="[1, 2, 3, 4, 5, 6]">
<template #list="{ slotList }">
<view v-for="(item, index) in slotList" :key="index" @click="test">{{ item }}</view>
</template>
</test>
<!-- 放在另外一个组件的slot中的test组件 -->
<other>
<test :list="[11, 22, 33, 44, 55, 66]">
<template #list="{ slotList }">
<view v-for="(item, index) in slotList" :key="index" @click="test">{{ item }}</view>
</template>
</test>
</other>
</view>
</template>
<script>
export default {
data() {
return {}
},
methods: {
test() {
console.log('test')
}
}
}
</script>
2 个回复
DCloud_UNI_LXH
问题已确认,已加分,后续会优化。
临时解决方案:
manifest.json中配置如下:
scopedSlotsCompiler
:legacy
详情DCloud_UNI_GSQ
HBuilderX alpha 3.1.22+ 已修复