require.context(directory,useSubdirectories,regExp)javascript
场景:如页面须要导入多个组件,原始写法:vue
import titleCom from '@/components/home/titleCom' import bannerCom from '@/components/home/bannerCom' import cellCom from '@/components/home/cellCom' components: { titleCom, bannerCom, cellCom }
样就写了大量重复的代码,利用 require.context 能够写成java
const path = require('path') const files = require.context('@/components/home', false, /\.vue$/) const modules = {} files.keys().forEach(key => { const name = path.basename(key, '.vue') //返回文件名 不含后缀名 modules[name] = files(key).default || files(key) }) components: modules