vue2全局组件使用require.context自动化注册
本文最后更新于 2024-09-14,文章内容可能已经过时。
require.context
是webpack
中的一个api
,可以通过指定路径
,来获取路径下所指定后缀的文件内容!
参数
参数 | 类型 | 说明 |
---|---|---|
dirname | string | 读取文件夹的路径 |
useSubdirectories | Boolean | 是否遍历子目录 |
RegExp | RegExp | 正则表达式,匹配文件后缀 |
require.context('@/api' , true, /(.js$)/);
使用
const path = require("path");
const moudule = {};
const files = require.context("@/components", true, /\.vue$/)
/*
实际上是 webpack 的方法,vue 工程一般基于 webpack,所以可以使用
require.context(directory,useSubdirectories,regExp)
接收三个参数:
directory:说明需要检索的目录
useSubdirectories:是否检索子目录
regExp: 匹配文件的正则表达式,一般是文件名
*/
const install = (Vue) => {
files.keys().map(key => {
modules[name] = files(key).default || files(key);
// console.log("basePath", basePath, key, modules[name]);
if (modules[name]) {
console.log("modules[name].name", modules[name].name, modules[name]);
Vue.component(modules[name].name, modules[name]);
}
})
}
export{
install
}
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 程序员小航
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果