Reactjs 巴别塔中预置react和react的区别

Reactjs 巴别塔中预置react和react的区别,reactjs,npm,babeljs,Reactjs,Npm,Babeljs,我正在从头开始创建一个React项目,没有创建React应用程序。 但它在我的mac电脑上运行良好,但在我的另一台ubuntu笔记本电脑上却不行。 下面是我以前的.babelrc文件内容 "presets": [ "@babel/preset-react", "@babel/preset-env" ] 它在我的mac(npm版本6.12.0)上运行良好,但在ubuntu(npm版本6.14.5)上运行不好 它显示了无法编译src/index.js->下一行的错误 ReactDO

我正在从头开始创建一个React项目,没有创建React应用程序。 但它在我的mac电脑上运行良好,但在我的另一台ubuntu笔记本电脑上却不行。 下面是我以前的.babelrc文件内容

"presets": [
    "@babel/preset-react",
    "@babel/preset-env"
]
它在我的mac(npm版本6.12.0)上运行良好,但在ubuntu(npm版本6.14.5)上运行不好 它显示了无法编译src/index.js->下一行的错误

ReactDOM.render(<App />, document.getElementById('root'));
最后,这两种方法都奏效了。但我不确定@babel/preset react和@babel/react之间的确切区别。 如果有人知道这两者的确切区别,请告诉我。 谢谢你的帮助


您通常可以在预设名称per中删除
babel preset
,但不建议将特定的
@babel/preset
作为选项。您通常可以在预设名称per中删除
babel preset
,但不建议将特定的
@babel/preset
作为选项。
"presets": [
    "@babel/react",
    "@babel/env"
]
{
-  "presets": ["@babel/preset-react"],
+  "presets": ["@babel/react"], // this is equivalent
-  "plugins": ["@babel/transform-runtime"],
+  "plugins": ["@babel/plugin-transform-runtime"], // same
}