每一个项目的根目录都有一个独立的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": []