webpack(三)使用 babel-loader 轉換 ES6代碼

查詢各個 loader的使用,能夠在官網上查詢。html

  https://www.npmjs.comnode

(一)安裝 babel-loader,babel-core。webpack

    使用命令web

npm install --save-dev babel-loader babel-core

    由於ES6語法每一年都在更新,所以,咱們須要必定的規則去轉換。npm

npm install --save-dev babel-preset-latest


(二)babel

  首先按照以下層級創建相應文件app

  

    將測試用的ES6代碼放在 app.js,使用CMD語法,將layer嵌入對象layer中。app.js代碼以下。測試

import layer from './components/layer/layer.js';

const App = function () {
    console.log(layer);
}

new App();

    layer.js代碼以下ui

function layer(){
    return{
        name:'layer',
        tpl:'testTpl'
    };
}

export default layer;

(三)webpack.config.js代碼以下spa

var htmlWebpackPlugin = require('html-webpack-plugin');
var path = require('path');
console.log(__dirname);
module.exports = {
    /*context: __dirname,*/
    entry: './src/app.js',

    output: {
        path: './dist',
        filename: 'js/[name]-bound.js'//生成後的文件名 爲 a-2ea5b2e9b258a8bbba73.js,main-2ea5b2e9b258a8bbba73.js
    },
    module: {
        loaders: [
            {
                test: /\.js$/,
                loader: 'babel-loader',
                /*exclude: path.resolve(__dirname, 'node_modules'), //編譯時,不須要編譯哪些文件*/
                /*include: path.resolve(__dirname, 'src'),//在config中查看 編譯時,須要包含哪些文件*/
                query: {
                    presets: ['latest'] //按照最新的ES6語法規則去轉換
                }
            }
        ]
    },
    plugins: [
        new htmlWebpackPlugin({
            filename: 'index.html', //經過模板生成的文件名
            template: 'index.html',//模板路徑
            inject: 'body' //是否自動在模板文件添加 自動生成的js文件連接

        })
    ]
};
相關文章
相關標籤/搜索