这个批量引入组件的方法,挺酷
我们在写vue组件的时候,如果在一个组件里引入多个组件,一般的写法是这样的
完全没毛病,但是这样的写法就有点累赘,每次新增一个组件又要添加多处,原来现在已经有更方便的写法了,实践了一下,非常nice
const routes = {};
const contexts = require.context('../SubComponets', false, /\.vue$/);
contexts.keys().forEach(key => {
let name = key.slice(2, -4);
console.log(name);
routes[name] = contexts(key).default || contexts(key);
})
components: {
...routes
},
代码解析:根据自己要引入的组件写require.context()的参数,第一个为路径;第二个为是否查找子文件夹;第三个为组件名字正则表达式匹配
然后可以遍历组件的名称,挂载到组件上。也可以通过过滤name的方法,挂载需要的组件,非常实用~