配置文档
每一个项目的根目录都有一个独立的config.json配置文件,其详细配置如下:
"projectPath": null
- 【常用】工程目录前缀"cssDir": "css"
- css文件夹名称"imagesDir": "css/i"
- images文件夹名称"jsDir": "js"
- js文件夹名称"htmlDir": "html"
- html文件夹名称"widgetDir": "widget"
- widget文件夹名称"outputDirName": "build"
- 输出文件夹名称"outputCustom": ""
- 自定义输出文件夹,以逗号分隔的字符串"cdn": "//misc.360buyimg.com"
- 【常用】静态cdn域名"serverDir": "misc.360buyimg.com"
- 上传至远端服务器文件夹的名称"previewServerDir": "page.jd.com"
- html文件夹上传至服务器所在的文件夹名称"widgetServerDir": "jdfwidget.jd.com"
- widget服务器所在的文件夹名称"widgetOutputName": "widget"
- 全局widgetOutputName名称"widgetOutputMode": 1
- 编译全局wigetOutputName模式,共三种:1: all widgets|2: white list|3: black list"widgetWhiteList": []
- 指定白名单,在widgetOutputMode=2时,输出这个列表内容到widget.js/widget.css中"widgetBlackList": []
- 指定黑名单,在widgetOutputMode=3时,排除这个列表的widget"widgetNesting": true
- widget嵌套功能开关,默认开启"localServerPort": 80
- 【常用】本地服务器端口"build"
"jsPlace": "insertBody"
- 调试时js文件位置 insertHead|insertBody"livereload":true
- 是否开启liveload"sass":true
- 是否开启sass编译"less":true
- 是否开启less编译"csslint": false
- 是否开启csslint
"upload"
"type": "http"
- 默认 ftp scp http"host": null
- 服务器的域名或者ip"user": null
- 上传时使用的用户名, ftp、scp需要,http不需要"password": null
- 规则同上"port": null
- 传输端口,ftp默认21,scp默认22,http默认3000"rootPrefix": "/var/www/html/"
- scp时传输的目录前缀,用来确认上传文件最终的地址,一个文件最终的地址会是rootPrefix + serverDir + projectPath + filePath,你可以根据自身server的配置来修改这个值
"output"
"cssImagesUrlReplace": true
- css中图片url加cdn替换"linkReplace": true
- 给link.href添加cdn前缀,v3.3.0版本新增,之前由jsUrlReplace
参数控制link.href添加cdn"jsUrlReplace": false
- js文件的id和dependences是否添加cdn前缀"jsPlace": "insertBody"
- 编译后js文件位置 insertHead|insertBody"cssCombo": true
- 【常用】css进行combo"jsCombo": true
- 【常用】js进行combo todo"hasBanner": true
- 是否给js文件,css文件添加banner时间戳"compressJs":true
- 【常用】是否开启压缩js文件"compressCss":true
- 【常用】是否开启压缩css文件"compressImage":true
- 【常用】是否开启压缩图片"cssSprite":true
- 是否开启css sprite功能"cssSpriteMode": 1
- 0: 将所有css文件中的背景图合并成一张sprite图片,1: 将每一个widget中的背景图分别合并成一张图片"cssSpriteMargin": 10
- css sprite图片之间的间距"cssSpriteDirection": vertical
- vertical:垂直合并,horizontal:水平合并"cssAutoPrefixer": true
- 【常用】是否自动删除过时的浏览器css前缀,如-webkit-box-orient: vertical;
"browserslist": ["last 2 version", "> 0.2%", "ie > 7"]
- 【常用】配置autoprefixer的browserslist。"base64": false
- 是否对图片进行base64编码"webp":false
- 是否生成对应的webp图片"excludeFiles": ""
- 【常用】想要直接忽略的文件/文件夹,以逗号分隔的字符串:”test,build”
"babel"
- 默认只启用基本转义(3.4.10及之前preset-es2015,之后为preset-env),您也可以在项目根目录下新建一个.babelrc
文件独立配置"presets": []
"plugins": []