【问题标题】:how to solve babel dependencies?如何解决 babel 依赖?
【发布时间】:2018-10-30 05:07:06
【问题描述】:

./ClientApp/Client.js 中的错误 模块构建失败(来自 ./node_modules/babel-loader/lib/index.js):

错误:插件/预设文件不允许导出对象,只能导出函数。

{
  "name": "misreact",
  "version": "1.0.0",
  "description": "",
  "path": "^0.12.7",
  "main": "HelloWorld.js",
  "dependencies": {
     "@babel/core": "^7.1.2",
     "babel-preset-env": "^1.7.0",
     "babel-preset-react": "^6.24.1",
     "babel-preset-stage-2": "^6.24.1",
     "react": "^16.6.0",
     "react-dom": "^16.6.0",
     "webpack": "^4.23.1",
     "webpack-cli": "^3.1.2"
   },
  "devDependencies": {
     "babel-core": "^6.26.3",
     "babel-loader": "^8.0.4",
     "webpack-dev-server": "^3.1.10"
   },
  "scripts": {
     "test": "echo \"Error: no test specified\" && exit 1",
     "start:dev": "webpack-dev-server --hot"
   },
  "author": "",
  "license": "ISC"
 }

【问题讨论】:

  • 对于Babel 7,您需要安装@babel/env@babel/preset-react
  • 发布你的 babel 配置。
  • run: npm install babel-loader @babel/core @babel/preset-env @babel/preset-react add to: ".babelrc"-file { "presets": [ "@babel/preset-env", "@babel/preset-react" ] } ,干杯!
  • 忘记添加并且 StackOverflow 不允许修改答案。请记住在安装这些编译器时使用--dev-flag,因为您不希望它们出现在您的最终包中。
  • @JimiPajala 尝试了您的建议,但出现以下错误: ./ClientApp/Client.js 中的错误模块构建失败(来自 ./node_modules/babel-loader/lib/index.js):错误:插件/预设文件不允许导出对象,只能导出功能。在 C:\Users\ARMAN\xautopilotdev\misreact\node_modules\babel-preset-stage-2\lib\index.js

标签: reactjs webpack babeljs babel-loader


【解决方案1】:

从 Babel 7 开始,阶段已被弃用。您可以使用以下软件包自动更新(以下命令将运行更新并在您的计算机上永久安装 babel-update):

npx babel-upgrade --write

此软件包将安装所有第 2 阶段更新(现在每个更新都是一个单独的软件包)。您可能需要考虑您实际需要哪些更新并删除其余更新。

如 cmets 中所述,我也会升级到 @babel/env 和 @babel/preset-react。

【讨论】:

  • ./ClientApp/Client.js 中的错误模块构建失败(来自 ./node_modules/babel-loader/lib/index.js):错误:插件/预设文件不允许导出对象,只有功能。在 ~\node_modules\babel-preset-react\lib\index.js at createDescriptor ~\node_modules\@babel\core\lib\config\config-descriptors.js:178:11) 在 items.map ~\node_modules\@ babel\core\lib\config\config-descriptors.js:109:50)
  • at Array.map () at createDescriptors ~\node_modules\@babel\core\lib\config\config-descriptors.js:109:29) at createPresetDescriptors ~\node_modules\@babel \core\lib\config\config-descriptors.js:101:10) 在 passPerPreset ~\node_modules\@babel\core\lib\config\config-descriptors.js:58:96) 在 cachedFunction ~\node_modules\@babel \core\lib\config\caching.js:33:19) 在 presets.presets ~\node_modules\@babel\core\lib\config\config-descriptors.js:29:84)
  • 在 mergeChainOpts ~\node_modules\@babel\core\lib\config\config-chain.js:315:26) 在 ~\node_modules\@babel\core\lib\config\config-chain .js:278:7 在 buildRootChain ~\node_modules\@babel\core\lib\config\config-chain.js:68:29) 在 loadPrivatePartialConfig ~\node_modules\@babel\core\lib\config\partial.js: 85:55) 在 Object.loadPartialConfig ~\node_modules\@babel\core\lib\config\partial.js:110:18) 在 Object. ~\node_modules\babel-loader\lib\index.js:140 :26) 在 Generator.next ()
  • 在 asyncGeneratorStep ~\node_modules\babel-loader\lib\index.js:3:103) at _next ~\node_modules\babel-loader\lib\index.js:5:194) at ~ \node_modules\babel-loader\lib\index.js:5:364 at new Promise () at Object. (~\node_modules\babel-loader\lib\index.js:5:97) at Object._loader (~\node_modules\babel-loader\lib\index.js:220:18) 在 Object.loader (~\node_modules\babel-loader\lib\index.js:56:18) 在 Object. (~\node_modules\babel-loader\lib\index.js:51:12)
  • 看起来你没有升级到@babel/preset-react。你有没有运行我上面发布的命令?请不要只发布错误消息。这不是很有帮助。你能发布你的 .babelrc 文件吗?
猜你喜欢
  • 2022-01-16
  • 1970-01-01
  • 2012-03-15
  • 2014-04-14
  • 2021-09-10
  • 2016-09-21
  • 2013-05-08
相关资源
最近更新 更多