Jes*_*988 5 javascript vue.js vuejs2
我是一名新生,当我使用自定义组件时,它给了我这个错误:
Vue warn: Unknown custom element: - 您是否正确注册了组件?
ModalBase组件中使用的组件和NoticeModal.vue中 NoticeModal使用的组件productInfo.vue。
我确信我已正确导入NoticeModal并productInfo.vue导入ModalBase.vue,NoticeModal.vue并且全部注册。
但我得到唯一的警告:Unknown custom element: <modal-base>
这是ModalBase.vue:
<template>
<div>
<div class="modal-header">
<slot name="header">
<p class="title">This is base</p>
</slot>
</div>
</div>
</template>
<script>
export default {
name: "ModalBase",
data() {
return {show: ''}
}
}
</script>
Run Code Online (Sandbox Code Playgroud)
这是NoticeModal.vue:
<template>
<div class="noticeModal">
<modal-base>
<div slot="header">hello</div>
</modal-base>
</div>
</template>
<script>
import {ModalBase} from '@/components/index';
export default {
name: "NoticeModal",
props: ['modalOptions'],
components: {
ModalBase
},
data() {
return {show: ''}
}
}
</script>
Run Code Online (Sandbox Code Playgroud)
这是productInfo.vue:
<template>
<div>
<notice-modal></notice-modal>
</div>
</template>
<script>
import {NoticeModal} from '@/components/index';
export default {
name: "productInfo",
components: {
'NoticeModal': NoticeModal
},
data() { }
}
</script>
Run Code Online (Sandbox Code Playgroud)
顺便说一下,这个路径'@/components/index'是正确的,并且NoticeModal已经ModalBase在这个文件中正确导入、注册和导出。
并在@/components/index:
import NoticeModal from '@/components/componentsFile/NoticeModal.vue'
import ModalBase from '@/components/componentsFile/ModalBase.vue'
export {
NoticeModal,
ModalBase
}
Run Code Online (Sandbox Code Playgroud)
components: {
'NoticeModal': NoticeModal
},
Run Code Online (Sandbox Code Playgroud)
这些行意味着您已经注册了一个名为“NoticeModel”的组件。因此,在您的模板代码中,您应该使用此组件并将“NoticeModel”作为 html 标签。
<template>
<div>
<NoticeModel></NoticeModel>
</div>
</template>
Run Code Online (Sandbox Code Playgroud)
您也可以使用以下代码来注册 HTML 样式标签并将其与通知模式一起使用
components: {
'notice-modal': NoticeModal
}
Run Code Online (Sandbox Code Playgroud)