首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >React和babel中的可选链式算子

React和babel中的可选链式算子
EN

Stack Overflow用户
提问于 2018-09-01 06:57:40
回答 2查看 2.9K关注 0票数 2

在我的项目I config babel中:

代码语言:javascript
复制
{
  "presets": ["react", "es2015","stage-1", "transform-optional-chaining"],
  "plugins": ["transform-runtime"]
}

这是我的devDependencies in package.json

代码语言:javascript
复制
"devDependencies": {
    "babel-cli": "^7.0.0-alpha.19",
    "babel-loader": "^7.1.5",
    "babel-plugin-module-resolver": "^3.1.1",
    "babel-plugin-transform-optional-chaining": "^7.0.0-beta.3",
    "babel-plugin-transform-runtime": "^6.23.0",
    "babel-preset-es2015": "^6.24.1",
    "babel-preset-stage-1": "^6.24.1",
    "copy-webpack-plugin": "^4.5.2",
    "css-loader": "^1.0.0",
    "file-loader": "^1.1.11",
    "html-webpack-plugin": "^3.2.0",
    "prettier": "^1.14.2",
    "react-hot-loader": "^4.3.4",
    "style-loader": "^0.22.1",
    "url-loader": "^1.1.1",
    "webpack": "^4.16.5",
    "webpack-cli": "^3.1.0",
    "webpack-dev-server": "^3.1.5"
  }

当我运行该项目时,我会得到以下错误:

找不到模块‘babel-预设-转换-可选-链接’

有人能解释一下如何修复这个错误吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-09-01 07:02:46

transform-optional-chaining是一个插件(不是预置的)。尝试将babel配置更改为:

代码语言:javascript
复制
{
  "presets": ["react", "es2015","stage-1"],
  "plugins": ["transform-runtime", "transform-optional-chaining"]
}
票数 5
EN

Stack Overflow用户

发布于 2018-09-01 07:56:07

似乎更大的问题是你有一个混合版本的babel,所有这些都过时了。“transform-可选链接”已经包含在babel 7的"stage-1“预置中,但是不是回巴贝尔6号的

然而,让事情变得更令人困惑的是:巴贝尔已经取消了舞台预置 ( es201x预设在Babel 6中被废弃了)。因此,在最新版本的babel中,您不仅需要列出“transform-可选链接”,还需要列出您正在使用的所有其他插件。

我认为这里唯一的真正的选择(如果你想使用最新的插件)是升级到最新版本的Babel 7-这包括了很多变化,但你将不得不这样做无论如何。你可以找到一个迁移指南

我想你可以在舞台预置被移除之前找到一个alpha版本,但是这只是给你自己更多的未来的工作,而且很可能仍然会有一些变化需要去做。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52125711

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档