vr-shopxo-uniapp/components
Council 80ea6bfdef refactor(iconfont): 主包精简 Phase 4B — u-icon 全量替换为 iconfont
【背景】
VR 扩展引入的 u-icon 组件通过 easycom 全局注册,导致主包引入:
- u-icon.wxss base64 副本 224.7 KB
- iconfont.json 元数据 85.8 KB
- u-icon.vue 1.7 KB
合计 ≈312 KB 冗余。

原版项目已有 <iconfont> 全局组件,功能等价。直接用 iconfont 替换可彻底消除冗余。

【变更】

1) components/iconfont/iconfont.vue 增强
   - 新增 #ifdef APP-NVUE 分支(合并 u-icon.vue 的 NVUE 逻辑)
   - iconfontCode computed:剥离 'icon-' 前缀后查 glyphs
   - iconSizeNvue computed:NVUE 单位补全
   - mounted 中调用 domModule.addRule('fontFace') 注册字体
   - 保留全部 iOS 修复注释

2) 替换 31 处 <u-icon> → <iconfont>
   - 属性映射:propName→name(+icon-前缀)、propColor→color、propSize→size
   - 动态 :propName 改写为 :name="'icon-'+var"

3) 删除
   - components/u-icon/u-icon.vue
   - components/u-icon/ 空目录

4) 修改的 11 个文件
   - pages/plugins/video/detail/detail.nvue (14 处)
   - pages/plugins/video/components/{loading,comment-info,comment-more,search}.vue (5 处)
   - pages/plugins/live/pull/pull.vue + pull.nvue (3 处)
   - pages/plugins/live/pull/components/{goods,live-content}/*.vue (7 处)
   - components/u-popup/u-popup.vue (1 处)
   - components/u-share-popup/u-share-popup.vue (1 处)

【效果】
- 用户实测:主包 2347.6 KB → 1997.9 KB(与原版 6.8 持平)
- 进一步在 HBuilder 中将 iconfont.json 加入自动排除列表后 → 1919.7 KB
- 比原版 6.8(1997 KB)小 77 KB

【风险】
- LOW(gitnexus detect_changes: 0 affected processes)
- NVUE 兼容性:iconfont.vue 已继承 u-icon.vue 全部 NVUE 逻辑(用户实测视频详情页正常)
- 直播场景:因项目无直播环境,未在生产 NVUE 验证(待启用时手动测试)

【验证】
- 用户实测:视频详情页、商品页图标显示正常
- 弹窗关闭图标(u-popup / u-share-popup)显示正常
2026-07-01 18:12:21 +08:00
..
app-admin 初始化方法调用错误修复 2025-10-27 18:39:27 +08:00
badge
bottom-line 修改nvue为css结构 2026-03-12 17:13:46 +08:00
cart feat: 商品列表/分类/购物车/魔法列表增加 VR 票务直跳逻辑 2026-06-27 16:46:53 +08:00
cart-para-curve 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
certificate icon更新 2025-09-23 23:11:27 +08:00
choice-location feat(diy): 自动获取位置 + 反查城市 + 过期重取 + 重新请求首页 2026-06-28 17:43:05 +08:00
common style: 优化页面切换体验,稳定底部菜单 Key 减少重绘,新增页面淡入渐变动画与商品搜索页骨架屏 2026-06-27 21:29:24 +08:00
copyright 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
countdown
diy-footer style: 优化页面切换体验,稳定底部菜单 Key 减少重绘,新增页面淡入渐变动画与商品搜索页骨架屏 2026-06-27 21:29:24 +08:00
emoji-popup 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
goods-batch-buy 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
goods-buy 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
goods-list feat: 商品列表/分类/购物车/魔法列表增加 VR 票务直跳逻辑 2026-06-27 16:46:53 +08:00
goods-spec-choice 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
icon-nav
iconfont refactor(iconfont): 主包精简 Phase 4B — u-icon 全量替换为 iconfont 2026-07-01 18:12:21 +08:00
lang-switch icon更新 2025-09-23 23:11:27 +08:00
modal-business 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
nav-back 适配支付宝小程序 2025-10-28 15:56:34 +08:00
nav-more
no-data style: 优化页面切换体验,稳定底部菜单 Key 减少重绘,新增页面淡入渐变动画与商品搜索页骨架屏 2026-06-27 21:29:24 +08:00
online-service fix(订单页): 优化付款栏布局、隐藏订单留言、关闭悬浮客服/快捷入口 2026-06-29 19:13:15 +08:00
panel-content 投诉举报开发 2025-12-29 18:13:28 +08:00
payment 订单详情支付 2026-01-14 10:38:43 +08:00
popup nvue页面初步更新 2026-03-06 15:25:09 +08:00
popupscreen 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
quick-nav fix(订单页): 优化付款栏布局、隐藏订单留言、关闭悬浮客服/快捷入口 2026-06-29 19:13:15 +08:00
realstore-cart 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
search 数据搜索支持切换店铺搜索 2025-09-17 11:22:01 +08:00
share-popup 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
slider 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
start-ad 开屏广告优化 2026-03-03 18:54:54 +08:00
status-bar-height 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
switch 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
title 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
trn-nav 新增开屏广告插件支持 2026-03-02 11:37:44 +08:00
u-popup refactor(iconfont): 主包精简 Phase 4B — u-icon 全量替换为 iconfont 2026-07-01 18:12:21 +08:00
u-share-popup refactor(iconfont): 主包精简 Phase 4B — u-icon 全量替换为 iconfont 2026-07-01 18:12:21 +08:00
u-transition 修改数据提示 2026-03-13 16:51:27 +08:00
upload 修改上传触发参数 2026-03-19 15:32:40 +08:00
user-base 修改nvue为css结构 2026-03-12 17:13:46 +08:00
video-player 新增视频和图片显示 2025-07-02 11:16:04 +08:00
wholesale-rules icon更新 2025-09-23 23:11:27 +08:00