關於webpack的項目文件:https://gitee.com/codeFarmerPen/webpackjavascript
若是要看配置less,請移步:http://www.javashuo.com/article/p-ftegbnmw-p.htmlcss
$ cnpm install extract-text-webpack-plugin --save-dev
const path = require('path'); let htmlwebpackplugin = require('html-webpack-plugin');//引入html-webpack-plugin插件 let get_html = function(name,chunk){//封裝 return { template: './app/ejs/generate/'+ name + '.ejs', filename: name+ '.html', chunks : ['main',chunk||null],//這裏引入公共文件main.js,另一個文件按需引入,固然也能夠把這個的值設爲數組,傳入function的第二個值用數組就行 chunksSortMode: 'manual',//將chunks按引入的順序排序 inject : true,//全部JavaScript資源插入到body元素的底部 hash : true, xhtml : true } }; //配置css、less文件入口 涉及到後面的url-loader,對css也加入了方法,若是喜歡用css寫,也能夠編譯過去 let ExtractTextPlugin = require('extract-text-webpack-plugin'); let export_html= { entry: { main:__dirname+"/app/js/main.js",//入口文件 main1:__dirname+"/app/js/main1.js",//入口文件 }, output: { path: __dirname+"/_build/", filename: "js/[name].js",//產出文件,name根據entry的入口文件鍵名定 }, module: { loaders: [ { test: /(\.jsx|\.js)$/, loader: 'babel-loader', query: { presets: ['es2015'] } } , { test: /\.ejs$/, loader: 'ejs-loader?variable=data' }, { test: /\.css$/, loader: ExtractTextPlugin.extract({ publicPath: "../../_build/", fallback: "style-loader", use: "css-loader" }) }, { test: /\.less$/, loader: ExtractTextPlugin.extract({ publicPath: "../../_build/", fallback: "style-loader", use: [ { loader: "css-loader" }, { loader: "less-loader" } ] }) } ] } , plugins: [ //生成css文件 new ExtractTextPlugin("./css/[name].css"), //new一個模板出來測試一下 new htmlwebpackplugin(get_html("home","main1")) ] }; module.exports=export_html;
能夠看見,加入了html
//配置css、less文件入口 涉及到後面的url-loader,對css也加入了方法,若是喜歡用css寫,也能夠編譯過去 let ExtractTextPlugin = require('extract-text-webpack-plugin');
和java
, { test: /\.css$/, loader: ExtractTextPlugin.extract({ publicPath: "../../_build/", fallback: "style-loader", use: "css-loader" }) }, { test: /\.less$/, loader: ExtractTextPlugin.extract({ publicPath: "../../_build/", fallback: "style-loader", use: [ { loader: "css-loader" }, { loader: "less-loader" } ] }) }
上一篇的部分天然被替換掉了(下述部分被上面內容替換掉了)webpack
{ test: /\.less$/, use: [ 'style-loader', 'css-loader', 'less-loader' ] },
生成了main.css,這是由於引入這個less的入口文件(main.js)的鍵名是main。git
main.css的內容web
style.less的內容npm
成功!數組
webpack配置(第一步:配置前提):http://www.javashuo.com/article/p-zhierewo-eo.htmlbabel
webpack配置(第二步:入門篇):http://www.javashuo.com/article/p-zgertkmc-mq.html
webpack配置(第三步:ES6篇):http://www.javashuo.com/article/p-yornwkpw-dt.html
webpack配置(第四步:html篇(基礎篇)):http://www.javashuo.com/article/p-ykguohhe-do.html
webpack配置(第四步:html篇(進階篇)):http://www.javashuo.com/article/p-nqgmvdah-hz.html
webpack配置(第四步:html篇(模板篇)):http://www.javashuo.com/article/p-cfrvmuzd-ea.html
webpack配置(第五步:less/css篇(基礎篇)):http://www.javashuo.com/article/p-ftegbnmw-p.html
webpack配置(第五步:less/css篇(進階篇)):http://www.javashuo.com/article/p-bkdzfetz-mx.html
webpack配置(第五步:less/css篇(url圖片篇)):http://www.javashuo.com/article/p-adtmrppc-mq.html