我想使用 babel-register 来运行一个为反应应用程序(服务器端渲染)提供服务的节点应用程序。
我这样使用它:
require('babel-register')({
extensions: ['.jsx', '.js'],
cache: false,
ignore: /\/(build|node_modules)\//,
presets: ['env', 'react-app'],
plugins: [
[
'module-resolver',
{
root: ['./app'],
extensions: ['.jsx', '.js'],
},
],
'syntax-dynamic-import',
'dynamic-import-node',
'react-loadable/babel',
],
});
问题是,当我想导入一个没有扩展名的相对 jsx 文件(假设是 Checkout.jsx 文件)时
import Checkout from './Checkout';
它导入一个空对象{}
。如果我将 .jsx 扩展名添加到导入中,例如
import Checkout from './Checkout.jsx';
它可以工作并导入 React 组件。
任何想法为什么没有扩展它不起作用?
谢谢!!