问题描述:使用webpack编译并提取less文件时报错
ERROR in ./src/css/studio.less
Module build failed: TypeError: require(...) is not a function
at D:\Projects\Sprite\workflow-studio\src\css\studio.less:16:74
at ContextifyScript.Script.runInContext (vm.js:35:29)
at ContextifyScript.Script.runInNewContext (vm.js:41:15)
at Object.extractLoader (D:\Projects\Sprite\workflow-studio\node_modules\extract-loader\lib\extractLoader.js:88:12)
webpack配置如下:
{
test:/\.less$/,
use: [
'file-loader',
'extract-loader','style-loader', 'css-loader','less-loader']
},
<p>已解决,去掉extract-loader。</p>
分析:
extract-loader是将后一个loader返回的代码放在一个沙盒中运行。style-loader返回的代码中包含一些特殊的全局变量而这个沙盒并没有提供定义所以运行失败。
集结各类场景实战经验,助你开发运维畅行无忧