1 | # 配置文档
|
2 |
|
3 | 每一个项目的根目录都有一个独立的config.json配置文件,其详细配置如下:
|
4 |
|
5 | * `"projectPath": null` - 工程目录前缀
|
6 |
|
7 | * `"cssDir": "css"` - css文件夹名称
|
8 |
|
9 | * `"imagesDir": "css/i"` - images文件夹名称
|
10 |
|
11 | * `"jsDir": "js"` - js文件夹名称
|
12 |
|
13 | * `"htmlDir": "html"` - html文件夹名称
|
14 |
|
15 | * `"widgetDir": "widget"` - widget文件夹名称
|
16 |
|
17 | * `"outputDirName": "build"` - 输出文件夹名称
|
18 |
|
19 | * `"outputCustom": ""` - 自定义输出文件夹,以逗号分隔的字符串
|
20 |
|
21 | * `"cdn": "//misc.360buyimg.com"` - 静态cdn域名
|
22 |
|
23 | * `"serverDir": "misc.360buyimg.com"` - 上传至远端服务器文件夹的名称
|
24 |
|
25 | * `"previewServerDir": "page.jd.com"` - html文件夹上传至服务器所在的文件夹名称
|
26 |
|
27 | * `"widgetServerDir": "jdfwidget.jd.com"` - widget服务器所在的文件夹名称
|
28 |
|
29 | * `"widgetOutputName": "widget"` - 全局widgetOutputName名称
|
30 |
|
31 | * `"widgetOutputMode": 1` - 编译全局wigetOutputName模式,共三种:1: all widgets|2: white list|3: black list
|
32 |
|
33 | * `"widgetWhiteList": []` - 指定白名单,在widgetOutputMode=2时,输出这个列表内容到widget.js/widget.css中
|
34 |
|
35 | * `"widgetBlackList": []` - 指定黑名单,在widgetOutputMode=3时,排除这个列表的widget
|
36 |
|
37 | * `"widgetNesting": true` - widget嵌套功能开关,默认开启
|
38 |
|
39 | * `"localServerPort": 80` - 本地服务器端口
|
40 |
|
41 | * `"build"`
|
42 | * `"jsPlace": "insertBody"` - 调试时js文件位置 insertHead|insertBody
|
43 |
|
44 | * `"livereload":true` - 是否开启liveload
|
45 |
|
46 | * `"sass":true` - 是否开启sass编译
|
47 |
|
48 | * `"less":true` - 是否开启less编译
|
49 |
|
50 | * `"csslint": false` - 是否开启csslint
|
51 |
|
52 | * `"upload"`
|
53 | * `"type": "http"` - 默认 ftp scp http
|
54 | * `"host": null` - 服务器的域名或者ip
|
55 | * `"user": null` - 上传时使用的用户名, ftp、scp需要,http不需要
|
56 | * `"password": null` - 规则同上
|
57 | * `"port": null` - 传输端口,ftp默认21,scp默认22,http默认3000
|
58 | * `"rootPrefix": "/var/www/html/"` - scp时传输的目录前缀,用来确认上传文件最终的地址,一个文件最终的地址会是rootPrefix + serverDir + projectPath + filePath,你可以根据自身server的配置来修改这个值
|
59 |
|
60 | * `"output"`
|
61 | * `"cssImagesUrlReplace": true` - css中图片url加cdn替换
|
62 |
|
63 | * `"linkReplace": true` - 给link.href添加cdn前缀,v3.3.0版本新增,之前由`jsUrlReplace`参数控制link.href添加cdn
|
64 |
|
65 | * `"jsUrlReplace": false` - js文件的id和dependences是否添加cdn前缀
|
66 |
|
67 | * `"jsPlace": "insertBody"` - 编译后js文件位置 insertHead|insertBody
|
68 |
|
69 | * `"cssCombo": true` - css进行combo
|
70 |
|
71 | * `"jsCombo": true` - js进行combo todo
|
72 |
|
73 | * `"hasBanner": true` - 是否给js文件,css文件添加banner时间戳
|
74 |
|
75 | * `"compressJs":true` - 是否开启压缩js文件
|
76 |
|
77 | * `"compressCss":true` - 是否开启压缩css文件
|
78 |
|
79 | * `"compressImage":true` - 是否开启压缩图片
|
80 |
|
81 | * `"cssSprite":true` - 是否开启css sprite功能
|
82 |
|
83 | * `"cssSpriteMode": 1` - 0: 将所有css文件中的背景图合并成一张sprite图片,1: 将每一个widget中的背景图分别合并成一张图片
|
84 |
|
85 | * `"cssSpriteMargin": 10` - css sprite图片之间的间距
|
86 |
|
87 | * `"cssSpriteDirection": vertical` - vertical:垂直合并,horizontal:水平合并
|
88 |
|
89 | * `"cssAutoPrefixer": true` - 是否自动删除过时的浏览器css前缀
|
90 |
|
91 | * `"base64": false` - 是否对图片进行base64编码
|
92 |
|
93 | * `"webp":false` - 是否生成对应的webp图片
|
94 |
|
95 | * `"excludeFiles": ""` - 想要直接忽略的文件/文件夹,以逗号分隔的字符串:"test,build"
|
96 |
|
97 | * `"babel"` - 默认只启用基本转义 http://babeljs.io/docs/plugins/preset-es2015/
|
98 | * `"presets": []`
|
99 | * `"plugins": []`
|
100 |
|
101 |
|