根因:微信开发者工具(>=1.05.2112301)的 ignoreDevUnusedFiles 会按 WXML/JS 依赖分析过滤 "无依赖"文件。tabBar 图标仅在 app.json 中声明,不属于任何页面 WXML/JS 依赖,被误判为无用 文件从开发包剥离,导致 5 个图标全部加载失败(渲染为破图占位)。 修复: - 在 project.config.json 与 miniapp/project.config.json 的 setting 中显式关闭 ignoreDevUnusedFiles / ignoreUploadUnusedFiles(false),阻止图标被过滤。 - 同步关闭本地 gitignore 的 project.private.config.json(DevTools 运行时实际读取项)。 - 预览通道 scripts/preview-miniapp.mjs:补全 /assets 绝对路径→相对路径重写,并手动复刻 原生 tabBar(原生 tabBar 不在任何页面 WXML 中,静态预览需自行复刻)。 - 回归守卫 ui-tests/tabbar-icons.mjs 扩充为 5 段,覆盖根因(配置开关)+ 预览复刻。 - miniapp/assets/tabbar/DESIGN.md 增加根因警示,防止后续被误开开关。 验证:UI 契约 23/23 全绿(tabbar-icons.mjs 位于 [19/23]);CDP 渲染实测 127 张图 0 破图, 5 个 tabBar 图标 naturalW=81 全部加载,选中色 rgb(233,107,107)、未选 rgb(153,153,153), 与 app.json selectedColor/color 一致。
40 lines
895 B
JSON
40 lines
895 B
JSON
{
|
|
"miniprogramRoot": "miniapp/",
|
|
"setting": {
|
|
"es6": true,
|
|
"postcss": true,
|
|
"minified": true,
|
|
"uglifyFileName": false,
|
|
"enhance": true,
|
|
"packNpmRelationList": [],
|
|
"babelSetting": {
|
|
"ignore": [],
|
|
"disablePlugins": [],
|
|
"outputPath": ""
|
|
},
|
|
"useCompilerPlugins": [
|
|
"typescript"
|
|
],
|
|
"minifyWXML": true,
|
|
"compileWorklet": false,
|
|
"uploadWithSourceMap": true,
|
|
"packNpmManually": false,
|
|
"minifyWXSS": true,
|
|
"localPlugins": false,
|
|
"disableUseStrict": false,
|
|
"condition": false,
|
|
"swc": false,
|
|
"disableSWC": true,
|
|
"ignoreDevUnusedFiles": false,
|
|
"ignoreUploadUnusedFiles": false
|
|
},
|
|
"compileType": "miniprogram",
|
|
"simulatorPluginLibVersion": {},
|
|
"packOptions": {
|
|
"ignore": [],
|
|
"include": []
|
|
},
|
|
"appid": "wx3b42f7e3ddc08c3f",
|
|
"editorSetting": {},
|
|
"libVersion": "3.17.1"
|
|
} |