【发布时间】:2021-06-15 04:16:48
【问题描述】:
自 Nuxt.js v2.13 起自动导入组件。
但是我们如何使用<component :is="MyComponent" />?
这样写会报错:
MyComponent 未定义
在这种情况下,我们是否应该以常规方式导入组件(例如import MyComponent from '@/components/MyComponent'),如果这样,组件不会被导入两次吗?
编辑:
脚本:
export default {
data () {
return {
componentNames: {
index: 'ButtonSection',
large_banner: 'LargeBanner',
small_banner: 'SmallBanner'
}
}
},
computed: {
...mapState({
sections: state => state.sections.section_list ?? null
})
}
}
</script>
模板:
<template v-if="sections">
<component
:is="componentNames[sections[i].section_type]"
v-for="(section, i) in sections"
:key="i"
/>
</template>
【问题讨论】: