在vue2里使用require.context()能获取目录下所有指定文件的地址
const files = require.context('@/pages/', true, /.vue$/).keys();
console.log(files)
在vue3中没有require,怎么实现同等功能呢?
找到答案了
const modules = import.meta.glob('../service/**')
console.log(modules);
https://cn.vitejs.dev/guide/features.html#glob-import
【以下回答由 GPT 生成】
在Vue 3中,由于 require
被移除了,可以使用动态 import
来实现相同的功能。下面是一种实现方式:
使用 glob
库安装: npm install glob --save-dev
在 Vue 组件的方法中使用 import.meta.glob
函数来动态导入对应的文件路径。
// 引入 glob
import glob from 'glob';
export default {
methods: {
async getAllFiles() {
// 使用 glob.sync 函数获取目录中的所有文件路径
const files = glob.sync('@/pages/**/*.vue');
console.log(files);
}
}
};
这样就可以在 Vue 3 中获取目录中的所有文件路径了。
【相关推荐】