{ "description": "项目配置文件。", "packOptions": { //打包配置选项 "ignore": [] //配置打包时对符合指定规则的文件或文件夹进行忽略,跳过打包的过程,这些文件或文件夹不会出现在预览或上传的结果内 }, "setting": { //项目设置 "urlCheck": true, //是否检查安全域名和TLS版本 "es6": true, //是否启用es5转es6 "postcss": true, //上传代码时样式是否自动补全 "minified": true, //上传代码时是否自动压缩 "newFeature": true }, "compileType": "miniprogram", //编译类型,miniprogram当前为普通小程序项目。plugin当前为小程序插件项目 "libVersion": "2.0.8", //基础库版本 "appid": "wxf5b8ab7a81a76efa", //APPID,只在新建项目时读取 "projectname": "test2", //项目名称,只在新建项目时读取 "isGameTourist": false, "condition": { "search": { "current": -1, "list": [] }, "conversation": { "current": -1, "list": [] }, "game": { "currentL": -1, "list": [] }, "miniprogram": { "current": -1, "list": [] } }}参数
| 字段名 | 类型 | 说明 |
|---|---|---|
| miniprogramRoot | Path String | 指定小程序源码的目录(需为相对路径) |
| qcloudRoot | Path String | 指定腾讯云项目的目录(需为相对路径) |
| pluginRoot | Path String | 指定插件项目的目录(需为相对路径) |
| compileType | String | 编译类型 |
| setting | Object | 项目设置 |
| libVersion | String | 基础库版本 |
| appid | String | 项目的 appid,只在新建项目时读取 |
| projectname | String | 项目名字,只在新建项目时读取 |
| packOptions | Object | 打包配置选项 |
| debugOptions | Object | 调试配置选项 |
| scripts | Object | 自定义预处理 |
compileType 有效值
| 名字 | 说明 |
|---|---|
| miniprogram | 当前为普通小程序项目 |
| plugin | 当前为小程序插件项目 |
setting 中可以指定以下设置
| 字段名 | 类型 | 说明 |
|---|---|---|
| es6 | Boolean | 是否启用 es6 转 es5 |
| postcss | Boolean | 上传代码时样式是否自动补全 |
| minified | Boolean | 上传代码时是否自动压缩 |
| urlCheck | Boolean | 是否检查安全域名和 TLS 版本 |
| uglifyFileName | Boolean | 是否进行代码保护 |
scripts 中指定自定义预处理的命令
| 名字 | 说明 |
|---|---|
| beforeCompile | 编译前预处理命令 |
| beforePreview | 预览前预处理命令 |
| beforeUpload | 上传前预处理命令 |
packOptions
packOptions 用以配置项目在打包过程中的选项。打包是预览、上传时对项目进行的必须步骤。
目前可以指定 packOptions.ignore 字段,用以配置打包时对符合指定规则的文件或文件夹进行忽略,以跳过打包的过程,这些文件或文件夹将不会出现在预览或上传的结果内。
packOptions.ignore 为一对象数组,对象元素类型如下:
| 字段名 | 类型 | 说明 |
|---|---|---|
| value | string | 路径1或取值 |
| type | string | 类型 |
其中,type 可以取的值为 folder、file、suffix、prefix、regexp2、glob2,分别对应文件夹、文件、后缀、前缀、正则表达式、Glob 规则。所有规则值都会自动忽略大小写。
注 1: value 字段的值若表示文件或文件夹路径,以小程序目录 (miniprogramRoot) 为根目录。
注 2: regexp、glob 仅 1.02.1809260 及以上版本工具支持。
示例配置如下。
{ "packOptions": { "ignore": [{ "type": "file", "value": "test/test.js" }, { "type": "folder", "value": "test" }, { "type": "suffix", "value": ".webp" }, { "type": "prefix", "value": "test-" }, { "type": "glob", "value": "test/**/*.js" }, { "type": "regexp", "value": "\.jsx$" }] }}注: 这部分设置的更改可能需要重新打开项目才能生效。
debugOptions
debugOptions 用以配置在对项目代码进行调试时的选项。
目前可以指定 debugOptions.hidedInDevtools 字段,用以配置调试时于调试器 Sources 面板隐藏源代码的文件。
hidedInDevtools 的配置规则和 packOptions.ignore 是一致的。
当某个 js 文件符合此规则时,调试器 Sources 面板中此文件源代码正文内容将被隐藏,显示为:
// xxx.js has been hided by project.config.json注:配置此规则后,可能需要关闭并重新打开项目才能看到效果。
项目配置示例:
{ "miniprogramRoot": "./src", "qcloudRoot": "./svr", "setting": { "postcss": true, "es6": true, "minified": true, "urlCheck": false }, "packOptions": { "ignore": [] }, "debugOptions": {}}













