javascript - 如何通过 props 传递导入的组件?
问题描述
有没有一种方法可以通过 props 将组件从父组件传递给子组件,而无需从子组件导入它?
父组件:
<template>
<ChildComponent :component="componentName">
</template>
<script>
import componentName from '@/components/componentName.vue'
</script>
子组件:
<template>
<div>
<component :is="component">
</div>
</template>
<script>
props: {
component: Object
}
</script>
目前,在此设置中,我收到未知自定义事件您是否正确注册了组件?错误。我知道它希望我在子组件中注册组件,但我不想从子组件中导入组件。有没有办法通过道具将导入传递给孩子?这不可能吗?
解决方案
你真的很亲密,问题出在你的第一个模板中:
<template>
<ChildComponent :component="componentName">
</template>
<script>
// this is not available in template scope
import componentName from '@/components/componentName.vue'
export default {
data: {
// this, however, is available!
componentName
}
}
</script>
推荐阅读
- r - 创建函数,但调用它返回返回“找不到函数”
- matlab - 看起来 imageLabeler 无法处理转换后的数据存储?
- ruby-on-rails - Blob 数大于上传文件数
- python - 单击按钮 tkinter 后添加图像
- autohotkey - 如何使用 AutoHotkey 单击列表中的文本?
- javascript - onclick反应,我想让我的按钮改变颜色
- oracle - 使用 jdbc .load() 从 Oracle 数据库中获取序列号
- css - 如何移植使用字符串插值的旧版本,以便与较新版本的less一起使用?
- javascript - 在反应应用程序中访问静态 html css 和 javascript
- python - 如何使用 css_selector 分别获得相同的类名?