动态引入组件
在页面上创建标签
主要使用的是异步组件
// 使用多个时可以使用for循环进行创建
<component
:is="mytext">
</component>
通过require.context方法获取路径下组件的对象
let requireComponent = require.context(
'@/components/fromitem/', // 在当前目录下查找
false, // 不遍历子文件夹
/\.vue$/ // 正则匹配 以 .vue结尾的文件
)
let comp = requireComponent('./Responsibility.vue').default
console.log("文件内修改")
console.log(comp)
this.mytext=comp
比较坑的是require.context的第一个参数不支持参数传入
所以需要做一些其他的操作
在定义组件的文件夹下定义一个js文件,通过此js文件来获取并抛出组件对象。然后在需要的地方动态添加获取js抛出的值就,完美的绕过了不支持参数传参这个问题
动态获取js在我上一篇博文有介绍。