如何强制webpack不解析节点模块中的require语句?
在以下单元测试示例中,我希望webpack解析require('./element.js')
,但只是跳过require('chai')
。
如何做到这一点?
index.js:
'use strict';
const assert = require('chai').assert;
const element = require('./element.js');
describe('element.create', function () {
jsdom();
it('creates a div', function () {
var div = document.createElement(element.create());
assert.strictEqual(div.nodeName, 'DIV');
});
});
执行命令
webpack index.js index-bundle.js
mocha index-bundle.js
答案 0 :(得分:1)
答案 1 :(得分:1)
您可以使用 require.ensure 在需要时异步加载。这可以帮助您在满足或不加载特定条件时加载 require(' chai')。
除了从您的捆绑包中删除require(' chai')并拆分为单独的捆绑包之外,请转到供应商捆绑包 例如:
entry: {
app: 'entry.js',
vendor: ['jquery', 'jquery.plugin1']
}