当我尝试使用以下代码动态导入vue组件时:
const组件= require.context('./',true,'/^index.js$/'); 我收到此错误:
at Module../asset/app.js (app.js:9)
at __webpack_require__ (bootstrap:782)
at fn (bootstrap:150)
at Object.0 (app.293d5fe1d8a073fed37a.bundle.js:1747)
at __webpack_require__ (bootstrap:782)
at checkDeferredModules (bootstrap:45)
at bootstrap:858
at bootstrap:858```
Why is that? How to fix that? What have I missed?
答案 0 :(得分:1)
尝试将第三个参数从字符串更改为正则表达式,即:
const components = require.context('./', true, /^index.js$/)
我经常使用正则表达式,而我正在尝试使用其他正则表达式,而不使用像这样的内联正则表达式。
旁注:您要查找从'./'向下的所有内容(递归:您将该标志设置为true
),但仅接受一个文件:index.js
基本文件夹。如果仅此而已,建议您将递归标志更改为false,这样会更快。
答案 1 :(得分:0)
文档中有一个句子 The arguments passed to require.context must be literals
。
第三个参数应该是像 /^index.js$/
这样的文字。我在使用 new RegExp()