require一整个文件夹

404 阅读1分钟

例如:引入文件夹下的所有svg文件

const requireAll = (requireContext: __WebpackModuleApi.RequireContext) =>
  requireContext.keys().forEach(requireContext)
try {
  requireAll(require.context('icons', true, /\.svg$/))
} catch (err) {
  console.log(err)
}

typescript报错: 需安装yarn add --dev @types/webpack-env

vite中可以使用import.meta.glob

例如批量注册全局组件

 import { defineAsyncComponent } from 'vue'
 const components = import.meta.glob('./**/*.vue') // 异步方式
 
 export default function install(app) {
   for (const [key, value] of Object.entries(components)) {
     const name = key.split('/')[1]
     app.component(name, defineAsyncComponent(value))
   }
 }