一、在src文件夹下components文件夹中创建文件夹componentsViews(放置所有自定义组件)
![在这里插入图片描述](https://img-blog.csdnimg.cn/304f9bda07324a839671799213349509.png)
import componentsViews from '@/components/componentsViews/index.js'
Vue.use(componentsViews)
二、form是我的自定义组件
<template>
<div>
<p>这是我的子组件</p>
<slot name="titleSlot" :title="title"> </slot>
</div>
</template>
<script>
export default {
props: [],
data() {
return {
title:'我是子组件的插槽'
}
},
methods: {},
}
</script>
三、index.js是让自定义组件可以全局使用的配置文件
import form from './form'
import JEditableTable from '@/components/jeecg/JEditableTable'
import { JVXETypes } from '@/components/jeecg/JVxeTable'
const Component = {
install: (Vue) => {
Vue.prototype.$JVXETypes = JVXETypes;
Vue.component('form-components', form)
Vue.component('JEditableTable', JEditableTable)
}
}
export default Component
</script>
三、在父页面使用
<template>
<div>
<form-components>
<p>我是父页面</p>
<template slot="titleSlot" scope="formData">
{{formData.title}}
</template>
</form-components>
</div>
</template>
<script>
export default {
props: [],
data() {
return {
title:'我是子组件的插槽'
}
},
methods: {},
}
</script>