Webpack 开启多线程后 React 组件报错咋回事?
我最近在项目里用 thread-loader 给 Babel 启用了多线程,结果一跑起来 React 组件就报错说“React is not defined”。明明没动组件代码,单独跑又没问题,是不是多线程环境下模块作用域出问题了?
这是我的一个简单组件:
import React from 'react';
const App = () => {
return (
<div>
<h1>Hello Thread!</h1>
</div>
);
};
export default App;
webpack 配置里给 babel-loader 套了 thread-loader,难道是 worker 里没正确传递 import?求大佬指点!
presets: ['@babel/preset-react']的配置,别光靠 thread-loader 自己猜——它默认不会自动处理 JSX 转译,React 变量当然找不着。正确写法是: