用 render
函数 生成默认的 作用域插槽
render(h){
return h('div',[this.$scopedSlots.default({
name:'mike'
})])
}
<template v-slot="slotProps">{{ slotProps }}</template> // {name:mike}
请教下 如何生成 具名插槽呢? 试了下 this.$scopedSlots.info()
直接报错了...
用 render
函数 生成默认的 作用域插槽
render(h){
return h('div',[this.$scopedSlots.default({
name:'mike'
})])
}
<template v-slot="slotProps">{{ slotProps }}</template> // {name:mike}
请教下 如何生成 具名插槽呢? 试了下 this.$scopedSlots.info()
直接报错了...
10 回答11.1k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答4.7k 阅读✓ 已解决
建议你用
setup
方法替代render
,setup
的参数里可以拿到slots
用来获取插槽信息:其实无非是对插槽是否存在进行一个判断而已,比如你想渲染
info
的具名插槽,但是如果在使用时并没有指定这个插槽,那么slots.info
是不存在的,你不做判断直接调用就会出错,同时做判断可以回退到默认渲染的内容。