zoukankan      html  css  js  c++  java
  • vue-cli脚手架的.babelrc文件

    虽然es6还没被浏览器全部支持,但是使用es6是大势所趋,所以babel应运而生将es6代码转换成浏览器能够识别的代码

    什么是.babelrc文件呢? 熟悉linux的同学一定知道,rc结尾的文件通常代表运行时自动加载的文件,配置等等,类似bashrc,zshrc
    这个文件是用来设置转码的规则和插件

    vue-cli脚手架的.babelrc文件

    {
        // 此项指明,转码的规则
        "presets": [
            // env项是借助插件babel-preset-env,下面这个配置说的是babel对es6,es7,es8进行转码,并且设置amd,commonjs这样的模块化文件,不进行转码
            ["env", {
             "modules": false ,
             "targets": {//需要支持的环境
               "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
              }
            }],
            // 下面这个是不同阶段出现的es语法,包含不同的转码插件
            // stage-x和es2015等有些类似,但是它是按照JavaScript的提案阶段区分的,一共有5个阶段。
            //而数字越小,阶段越靠后,存在依赖关系。也就是说stage-0是包括stage-1的,以此类推。
            "stage-2"
        ],
        // 下面这个选项是引用插件来处理代码的转换,transform-runtime用来处理全局函数和优化babel编译,强烈推荐使用transform-runtime
        "plugins": ["transform-runtime"],
        // 下面指的是在生成的文件中,不产生注释
        "comments": false,
        // 下面这段是在特定的环境中所执行的转码规则,当环境变量是下面的test就会覆盖上面的设置
        "env": {
            // test 是提前设置的环境变量,如果没有设置BABEL_ENV则使用NODE_ENV,如果都没有设置默认就是development
            "test": {
                "presets": ["env", "stage-2"],
                // instanbul是一个用来测试转码后代码的工具
                "plugins": ["istanbul"]
            }
        }
    }
    

    browserslist: Library to share supported browsers list between different front-end tools. It is used in:

    • Autoprefixer
    • babel-preset-env
    • eslint-plugin-compat
    • stylelint-no-unsupported-browser-features
    • postcss-normalize
  • 相关阅读:
    是否有人会想起
    春风下也有落叶
    to kongove:呵呵~是啊,偶尔吹得玩下,仅当娱乐而已……
    木头人の狂想
    夜行静思湖
    [学习标准库]math.h
    [学习标准库]ctype.h
    [学习标准库]stdio.h
    句子
    [学习标准库]assert.h
  • 原文地址:https://www.cnblogs.com/papi/p/7656162.html
Copyright © 2011-2022 走看看