zoukankan      html  css  js  c++  java
  • create-react-app下的@修饰器正确的使用方式记录

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

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

    "devDependencies": {
        "@babel/core": "^7.1.6",
        "@babel/plugin-proposal-class-properties": "^7.1.0",
        "@babel/plugin-proposal-decorators": "^7.1.6",
        "@babel/preset-env": "^7.1.6",
      }
    

    .babelrc文件配置:

    {
        "presets": ["@babel/preset-env"],
        "plugins": [
          ["@babel/plugin-proposal-decorators", { "legacy": true }],
          ["@babel/plugin-proposal-class-properties", { "loose": true }]
        ]
      }
    

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

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

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

    "scripts": {
    -   "start": "react-scripts start",
    +   "start": "react-app-rewired start",
    -   "build": "react-scripts build",
    +   "build": "react-app-rewired build",
    -   "test": "react-scripts test",
    +   "test": "react-app-rewired test",
    }
    

    最后运行即可解决



    作者:chouchou723
    链接:https://www.jianshu.com/p/b841aee4745f
    来源:简书
    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
  • 相关阅读:
    9 Fizz Buzz 问题
    2 尾部的零
    1 A+B问题
    递归
    互斥同步
    垃圾收集器与内存分配策略---垃圾收集算法
    10.矩形覆盖
    9.变态跳台阶
    8.跳台阶
    9.path Sum III(路径和 III)
  • 原文地址:https://www.cnblogs.com/FineDay/p/10905315.html
Copyright © 2011-2022 走看看