project.config.json:项目公共配置
- 存放 appid、基础库、编译设置、项目名称 等
- 团队共享,所有人共用一份配置
- 必须提交到 Git / 代码仓库
打包上传时不会发布到线上
project.private.config.json:个人私有配置(私密、不共享)
- 存放 个人调试习惯、页面路径、私有编译选项
- 只属于你自己,不提交 Git
- 不会影响团队其他人
开发者工具不会上传这个文件
开发版 / 体验版 / 正式版,只认:project.config.json 里的公共编译 & 基础库 & appid 配置
project.config.json一些字段以及含义:
javascript
{
"description": "备注说明,小程序描述",
"packOptions": { // 打包上传配置
"ignore": [ // 打包时忽略的文件
{
"type": "file",
"value": ".eslintrc.js"
}
],
"include": [] // 包含的文件
},
"setting": { // 开发者工具编译 / 上传设置
"urlCheck": true, // 是否检查合法域名(上线必须开,开发可关)
"es6": true, // 把 ES6 转 ES5(兼容低版本手机)
"enhance": true, // 增强编译
"postcss": true, // 自动补全 CSS 前缀(如 - webkit-)
"preloadBackgroundData": false, // 后台预加载数据
"minified": true, // 上传时压缩代码(上线必须开)
"newFeature": false, //
"coverView": true, // 原生组件覆盖
"nodeModules": true, // 自动打包 node_modules 依赖
"autoAudits": false, // 自动体验评分
"showShadowRootInWxmlPanel": true, // 调试面板显示 shadow dom
"scopeDataCheck": false, // 数据变量校验(关闭不影响运行)
"uglifyFileName": false, // 混淆文件名
"checkInvalidKey": true, // 检查 JSON 键名是否合法
"checkSiteMap": true, // 检查站点地图
"uploadWithSourceMap": true, // 上传时带上 SourceMap(方便线上报错定位)
"compileHotReLoad": false, // 热重载
"lazyloadPlaceholderEnable": false, // 图片懒加载占位
"useMultiFrameRuntime": true, // 多框架运行时
"useApiHook": true, //
"useApiHostProcess": false, //
"babelSetting": { // Babel 编译配置
"ignore": [], //
"disablePlugins": [], //
"outputPath": "" //
},
"enableEngineNative": false, // 启用原生渲染引擎
"useIsolateContext": false, // 独立上下文
"userConfirmedUseIsolateContext": true, //
"userConfirmedBundleSwitch": false, //
"packNpmManually": false, // 手动打包 NPM
"packNpmRelationList": [], //
"disableUseStrict": false, // 禁用严格模式
"minifyWXSS": true, // 压缩小程序样式文件(上线必开)
"minifyWXML": true, // 压缩小程序结构文件(上线必开)
"showES6CompileOption": false, //
"useCompilerPlugins": false, //
"compileWorklet": false, //
"localPlugins": false, //
"condition": false, //
"swc": false, // SWC 编译开关(新版编译加速)
"disableSWC": true // SWC 编译开关(新版编译加速)
},
debugOptions: { // 项目调试相关的配置对象微信开放社区 配置后需重启开发者工具才能生效
"hideInDevtools": [] // 配置需要在调试器中隐藏的文件 / 目录规则
"hideInDevtools": [
// 1. 隐藏单个文件
{ "value": "utils/util.js", "type": "file" },
// 2. 隐藏整个目录(如第三方依赖、工具库)
{ "value": "node_modules/", "type": "folder" },
{ "value": "libs/", "type": "folder" }
]
},
"scripts": { // 小程序开发者工具的「生命周期钩子」,用来在 编译、预览、上传 这三个关键动作前,自动执行你指定的自定义命令 / 脚本
"beforeCompile": "node build/prepare.js", // 常用: 每次 代码保存 → 自动编译 前,可以自动生成页面 / 组件、替换开发环境变量、检查代码规范
"beforePreview": "npm run build:dev", // 常用:点击 「预览」(真机扫码) 前,构建开发版代码、注入测试域名、压缩静态资源
"beforeUpload": "npm run build:prod" // 常用:点击 「上传」(提交到后台) 前,生产环境构建、替换正式域名 / 密钥、代码混淆、清理注释、自动打版本号
},
"staticServerOptions": { //主要用于小游戏 的配置项,在本地启动一个静态资源服务器,方便你通过HTTP 地址预览和测试项目中的静态文件(如图片、音频、视频等)
"baseURL": "/static/", // 访问基础路径(可选)
"servePath": "static" // 要托管的**本地目录**(相对项目根)
},
"isGameTourist": false, // 控制小程序开发者工具是否以 "游戏游客模式" 运行项目,仅影响本地调试,与线上环境完全无关
"compileType": "miniprogram", //
"libVersion": "2.23.2", //
"appid": "wxe69445b5bbec9b25", //
"projectname": "mini-jjj", //
"isGameTourist": false, //
"condition": { // 调试条件:用于开发者工具调试页面时的自定义条件 平时为空,不影响项目
"search": { //
"list": [] //
},
"conversation": { //
"list": [] //
},
"game": { //
"list": [] //
},
"plugin": { //
"list": [] //
},
"gamePlugin": { //
"list": [] //
},
"miniprogram": { //
"list": [] //
}
},
"simulatorPluginLibVersion": {}, // 模拟器插件配置
"editorSetting": {} // 编辑器配置
}