vue 2.0 无法编译ES6语法

# vue2.0 webpack 无法编译 ES6 语法

之前在使用 vue 1.x 时用 vue-loader@8.0.0 版本可以正常打包vue的代码,包括ES6语法也能正常转为ES5语法,但是当使用 vue@2.0 + vue-loader@10.0.2 以后发现,通过 webpack 打包后的代码里面的ES6语法没有转义,google一会后发现,需要在webpack.config.js里单独配置babel的编译规则。一个典型的配置如下:

var webpack = require('webpack');
var vue = require('vue-loader')
var ExtractTextPlugin = require("extract-text-webpack-plugin");

module.exports = {
    //插件项
    plugins: [
        new ExtractTextPlugin("[name].css")
    ],
    //页面入口文件配置
    entry: {
        index : './src/index.js'
    },
    //入口文件输出配置
    output: {
        path: './dist/',
        filename: '[name].js'
    },
    module: {
        preLoaders: [
          {
            test: /\.vue$/,
            loader: 'eslint',
            include: '../',
            exclude: /node_modules/
          },
          {
            test: /\.js$/,
            loader: 'eslint',
            include: '../',
            exclude: /node_modules/
          }
        ],
        //加载器配置
        loaders: [,
            { 
                test: /\.vue$/, 
                loader: 'vue'
            },
            { 
                test: /\.js$/, 
                loader: "babel",
                query: {presets: ['es2015']},
                exclude: /node_modules/ 
            },
            { 
                test: /\.css$/, 
                loader: ExtractTextPlugin.extract("css") 
            },
            { 
                test: /\.less$/, 
                loader: ExtractTextPlugin.extract("css!less") 
            }
        ]
    },
    vue : {
      loaders: {
        css: ExtractTextPlugin.extract("css"),
        less: ExtractTextPlugin.extract("css!less")
      },
      autoprefixer: { browsers: ["ios_saf >= 7", "android >= 4"] }
    },
    babel: {
      presets: ['es2015'],
      plugins: ['transform-runtime']
    }
};

看到最后一个配置了吗?需要单独为babel配置编译规则,vue-loader才能编译ES6语法。

此方法在 vue@2.1.8 , vue-loader@10.0.2 是可行的。

 

谢谢

转载于:https://www.cnblogs.com/xiaoniuzai/p/6286371.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值