关于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