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
    来源:简书
    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
  • 相关阅读:
    web前端node.js常用命令
    常见的一部份面试题
    JavaScript基础语法
    表单属性、标签
    文字美化学习总结
    JS-实现横向手风琴
    Js-带进度条的轮播图
    canvas-八卦图和时钟实现
    JS-闭包练习
    JS-上下文练习
  • 原文地址:https://www.cnblogs.com/FineDay/p/10905315.html
Copyright © 2011-2022 走看看