这里只介绍开发时用法,基础知识详见笔记

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
var models = require('./models.json'),//这里的models文件主要是关于一些json数据。
webpack = require('webpack'),
HtmlWebpackPlugin = require('html-webpack-plugin'),
_ = require('lodash');
var htmlPlugin = function (language) {
return _.map(models, function(value,key) {
return new HtmlWebpackPlugin({
title: value,
//生成模板地址
template: './src/pages/'+key+'/index.ejs',
filename: key+'/index.html',
//chunks这个参数告诉插件要引用entry里面的哪几个入口
chunks: ['mainfest', 'vendor', key],
//要把script插入到标签里
inject: 'body',
hash: true,
minify:{ //压缩HTML文件(注意,虽然minify支持BooleanObject,但是不能直接这样写:minify: true , 这样会报错 ERROR in TypeError: Cannot use 'in' operator to search for 'html5' in true , 使用时候必须给定一个 { } 对象 )
collapseWhitespace:true //删除空白符与换行符
},
"files": {
"css": [].concat([
"../static/font-awesome-4.5.0/css/font-awesome.min.css",
//iuap
"../static/iuap-design-"+iuapversion+"/css/u.min.css",
"../static/iuap-design-"+iuapversion+"/css/grid.min.css",
"../static/css/base.css",
"../static/iuap-design-"+iuapversion+"/css/tree.css"
]),
"js": [
//jquery
"../static/js/jquery-2.1.1.js",
"../static/js/knockout/knockout-3.4.0.min.js",
"../static/iuap-design-"+iuapversion+"/js/u.js",
"../static/iuap-design-"+iuapversion+"/js/u-grid.js",
"../static/iuap-design-"+iuapversion+"/js/u-tree.js",
"../static/jquery.metismenu.js",
"../static/file/jquery.cookie.js",
"../static/file/ajaxfileupload.js",
"../static/file/interface.file.js",
"../static/file/interface.file.impl.js",
"../static/js/loading/jquery.mloading.js"
]
}
})
});
}