最近做的项目老板要兼容ie,于是我搜了网上的例子,原因是ie使用的es5,因为vue项目用到了es6需要转码。

安装'babel-polyfill' 来转码。

npm install babel-polyfill --save-dev

然后在build/webpack.base.conf.js里面更改配置:

 entry: {
    app:'./src/main.js'
 },

改成

 entry: {
    app: ['babel-polyfill', './src/main.js']
  },

最后在main.js里面引入(最好是写在vue引入后)

import 'babel-polyfill'

好的,干完收工。打开ie,页面空白,干得漂亮。

于是我打开控制台,看看有没有什么线索

当时我就蒙蔽了,这是什么鬼,人家谷歌就没这么多事。于是我打开app.js,发现箭头一直指向这一行

然后并没有什么头绪,接着搜大佬的经验。最后被我找到原因是

这个文件里面有代码没转换成es5! 我们把这个文件的路径复制下来,打开webpack.base.conf.js,配置:

      {
        test: /\.js$/,
        loader: 'babel-loader',
        include: [resolve('src'), resolve('test')]
      }

改成

       {
        test: /\.js$/,
        loader: 'babel-loader',
        include: [resolve('src'), resolve('test'), resolve('node_modules/_resize-detector@0.1.10@resize-detector/esm')]
      }

运行项目,打开ie,页面就出来了!

以上便是我整理各位大佬的经验写出来的文章。