zoukankan      html  css  js  c++  java
  • vue2.0在android5.0白屏, es6转es5保证浏览器兼容性

    1. 安装 npm install --save-dev babel-preset-es2015

    2. 安装 npm install --save-dev babel-preset-stage-3

    3. 在项目根目录创建一个.babelrc文件(ES6转ES5配置)  里面内容 最基本配置是:

    {
        // 此项指明,转码的规则
      "presets": [
      // env项是借助插件babel-preset-env,下面这个配置说的是babel对es6,es7,es8进行转码,并且设置amd,commonjs这样的模块化文件,不进行转码
      ["env", { "modules": false }],
      // 下面这个是不同阶段出现的es语法,包含不同的转码插件
      "stage-2"
      ],
      // 下面这个选项是引用插件来处理代码的转换,transform-runtime用来处理全局函数和优化babel编译
      "plugins": ["transform-runtime"],
      // 下面指的是在生成的文件中,不产生注释
      "comments": false,
      // 下面这段是在特定的环境中所执行的转码规则,当环境变量是下面的test就会覆盖上面的设置
      "env": {
      // test 是提前设置的环境变量,如果没有设置BABEL_ENV则使用NODE_ENV,如果都没有设置默认就是development
      "test": {
        "presets": ["env", "stage-2"],
        // instanbul是一个用来测试转码后代码的工具
        "plugins": ["istanbul"]
        }
        }
    }    

    然后重启npm run dev  你会发现,可以在其他低版本浏览器跑了,基本兼容所有浏览器,ie8以下除外。而且大多数的手机浏览器也ok。

    IE报vuex requires a Promise polyfill in this browser问题解决

    解决方法
    第一步: 安装 babel-polyfill 。 babel-polyfill可以模拟ES6使用的环境,可以使用ES6的所有新方法

    npm install --save babel-polyfill

    第二步: 在 Webpack/Browserify/Node中使用

    在webpack.config.js文件中,使用

    module.exports = {
    entry: {

    app: ["babel-polyfill", "./src/main.js"]

    }
    };

    替换

    module.exports = {
    entry: {

    app: './src/main.js'

    }
    }

  • 相关阅读:
    bzoj3996
    bzoj3157 3516
    bzoj1937
    bzoj1532
    bzoj3572
    bzoj1453
    bzoj3205
    bzoj2595
    关于高斯消元解决xor问题的总结
    linux查找和替换命令
  • 原文地址:https://www.cnblogs.com/peter-web/p/10213574.html
Copyright © 2011-2022 走看看