我試圖在Webpack的require.context
中包含我的伊斯坦布爾記者應該報道的所有文件。從Webpack的require.context中排除文件
我想包括/要求所有app
文件中沒有.test.js
擴展名。
// internals/testing/test-bundler.js
const context = require.context('../../app', true, /^.*(?!(\.test|internals.*))\.js$/);
context.keys().forEach(context);
我的文件結構是:
app/components/
app/containers/
app/decorators/
app/orm/
app/pages/
app/store/
app/tests/
app/utils/
app/app.js
app/reducers.js
app/routes.js
internals/testing/test-bundler.js
顯然,我的正則表達式不會因爲覆蓋報告中,我看到所有的.test.js
文件,甚至internals/testing/test-bundler.js
文件內工作。
我在做什麼錯?
從他的樣本路徑的測試,你的答案只返回'應用程序/ app.js'? – Veverke
它將返回任何目錄中的路徑,但不會返回內部/ *'。他們在第一次斜線後不會有'測試'。所以從這個意義上說,'test/internals.js'仍然會通過。但在正則表達式中很容易改變。 – LukStorms