在create-react-app下使用es7的@修饰器会报错''Support for the experimental syntax 'decorators-legacy' isn't currently enable"
原文地址https://www.jianshu.com/p/b841aee4745f

需要做以下几步,首先正确安装babel

  1. "devDependencies": {
  2. "@babel/core": "^7.1.6",
  3. "@babel/plugin-proposal-class-properties": "^7.1.0",
  4. "@babel/plugin-proposal-decorators": "^7.1.6",
  5. "@babel/preset-env": "^7.1.6",
  6. }

.babelrc文件配置:

  1. {
  2. "presets": ["@babel/preset-env"],
  3. "plugins": [
  4. ["@babel/plugin-proposal-decorators", { "legacy": true }],
  5. ["@babel/plugin-proposal-class-properties", { "loose": true }]
  6. ]
  7. }

在pageage.json同级目录新建config-overrides.js并且添加内容

  1. const { injectBabelPlugin } = require('react-app-rewired');
  2. module.exports = function override(config, env) {
  3. // do stuff with the webpack config...
  4. config = injectBabelPlugin(['@babel/plugin-proposal-decorators', { "legacy": true }], config) //{ "legacy": true }一定不能掉,否则报错
  5. return config;
  6. };

安装react-app-rewired并且修改启动package.json

  1. "scripts": {
  2. - "start": "react-scripts start",
  3. + "start": "react-app-rewired start",
  4. - "build": "react-scripts build",
  5. + "build": "react-app-rewired build",
  6. - "test": "react-scripts test",
  7. + "test": "react-app-rewired test",
  8. }

最后运行即可解决

作者:chouchou723
链接:https://www.jianshu.com/p/b841aee4745f
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

create-react-app下的@修饰器正确的使用方式记录的更多相关文章

  1. 深入 Create React App 核心概念

    本文差点难产而死.因为总结的过程中,多次怀疑本文是对官方文档的直接翻译和简单诺列:同时官方文档很全面,全范围的介绍无疑加深了写作的心智负担.但在最终的梳理中,发现走出了一条与众不同的路,于是坚持分享出 ...

  2. 如何扩展 Create React App 的 Webpack 配置

    如何扩展 Create React App 的 Webpack 配置  原文地址https://zhaozhiming.github.io/blog/2018/01/08/create-react-a ...

  3. 在 .NET Core 5 中集成 Create React app

    翻译自 Camilo Reyes 2021年2月22日的文章 <Integrate Create React app with .NET Core 5> [1] Camilo Reyes ...

  4. tap news:week5 0.0 create react app

    参考https://blog.csdn.net/qtfying/article/details/78665664 先创建文件夹 安装create react app 这个脚手架(facebook官方提 ...

  5. 使用create react app教程

    This project was bootstrapped with Create React App. Below you will find some information on how to ...

  6. Create React App

    Facebook开源了React前端框架(MIT Licence),也同时提供了React脚手架 - create-react-app. create-react-app遵循约定优于配置(Coc)的原 ...

  7. Create React App 安装less 报错

    执行npm run eject 暴露模块 安装 npm i  less less-loader -D 1.打开 react app 的 webpack.config.js const sassRege ...

  8. [React] Use the Fragment Short Syntax in Create React App 2.0

    create-react-app version 2.0 added a lot of new features. One of the new features is upgrading to Ba ...

  9. [React] {svg, css module, sass} support in Create React App 2.0

    create-react-app version 2.0 added a lot of new features. One of the new features is added the svgr  ...

随机推荐

  1. 解决旋转屏幕闪退在androidManifest.template.xml里,activity项添加:

     解决旋转屏幕闪退在androidManifest.template.xml里,activity项添加:android:configChanges="orientation|keyboard ...

  2. 获取react中高阶组件方法

    什么是高阶组件? 高阶组件就是接受一个组件作为参数并返回一个新组件的函数.这里需要注意高阶组件是一个函数,并不是组件,这一点一定要注意.同时这里强调一点高阶组件本身并不是 React API.它只是一 ...

  3. 1.k8s.资源清单

    #k8s常用资源 工作负载:Pod,rs(ReplicasSet),deploy(Deployment),sts(StatefulSet),ds(DaemonSet),Job,Cronjob 服务发现 ...

  4. 007/Docker(一)

    Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口. Docker 将应用程序与该程序的依赖,打包在一个文件里面.运行这个文件,就会生成一个虚拟容器.程序在这个虚拟容器里运行, ...

  5. mooc-IDEA postfix--007

    十三.IntelliJ IDEA -postfix 代码中输入: 总结常用的postfix: 1.for  (<=>100.fori) 2.sout (<=>System.ou ...

  6. 解决浏览器打开网页后提示“dns_probe_possible”的方法

    使用浏览器浏览网页时偶尔会遇到无法上网且浏览器提示:DNS_PROBE_POSSIBLE 一般有三种情况会导致这样的故障: 1.网络协议出现故障,也就是常说的 DNS 设置问题 2.浏览器中设置问题, ...

  7. 一个阿里云apache服务器配置两个或多个域名forLinux

    一个阿里云apache服务器配置两个或多个域名for Linux: 默认已经配置好了阿里云提供的一键web安装,可以参考:http://www.42iot.com/?id=8 修改/alidata/s ...

  8. jQuery难学是因为什么?

    我们看别人写的js代码,发现很多不明白,其实只是你对语法不清楚.对函数方法了解的不全面. /****************************************************** ...

  9. CSU-1110 RMQ with Shifts (单点更新+区间最小值 zkw线段树)

    In the traditional RMQ (Range Minimum Query) problem, we have a static array A. Then for each query ...

  10. 高端编程之DOM

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...