0

我有一个使用react-data-grid@7使用create-react-app 创建的反应应用程序。由于 canary17 他们开始使用es2020 modules,为了使用更新的版本,我必须向应用程序添加对可选链nullish-coalescing-operator的支持,否则我在启动应用程序时会出错。 经过几次搜索,我安装了customize-crareact-app-rewired,将脚本命令更改为

"start": "react-app-rewired start"     
"build": "react-app-rewired build"   

并添加了这个config-overrides.js

const {
    override,
    addBabelPlugin
 } = require("customize-cra");

 module.exports = override(
    addBabelPlugin("@babel/plugin-proposal-optional-chaining"),
    addBabelPlugin("@babel/plugin-proposal-nullish-coalescing-operator"),
 );

尝试运行该应用程序时,我得到了一个奇怪的行为。使用start命令我得到了同样的错误,但如果我构建和部署应用程序正常工作。
如果我在 config-overrides.js 中添加错误并尝试开始运行启动,我会收到一条错误消息,所以我认为文件已加载。

我错过了什么吗?

4

1 回答 1

0

经过几次测试后,我发现解决方案从

addBabelPlugin("@babel/plugin-proposal-optional-chaining"),
addBabelPlugin("@babel/plugin-proposal-nullish-coalescing-operator"),

addExternalBabelPlugin(["@babel/plugin-proposal-optional-chaining", { "loose": false }]),
addExternalBabelPlugin(["@babel/plugin-proposal-nullish-coalescing-operator", { "loose": false }]),

我也添加了松散参数,但这不是问题。现在看起来在服务和构建中都有效

于 2020-09-18T16:30:08.227 回答