- 建立 Lucide 子集 iconfont(49 字形),全站 emoji 替换为 fc-icon 组件 - 重塑 Design Token(冷中性近黑底 + Volt 荧光绿 #B6F24E),消除硬编码颜色 - 首页登录后个性化:我的计划 / 我的收藏 / 今日推荐(纯前端复用现有 API) - 后端 DEFAULT_EMOJI→Lucide 名,PALETTE 对齐 Kinetic Dark 语义色板 - 修复 person-standing 缺失字形;14 个官方组合 seed emoji 全部映射到现有字形
24 lines
598 B
JavaScript
24 lines
598 B
JavaScript
const iconMap = require('../../utils/icon-map');
|
||
|
||
Component({
|
||
properties: {
|
||
// Lucide 图标名,如 search / dumbbell / heart
|
||
name: { type: String, value: '' },
|
||
// 字号(rpx)
|
||
size: { type: Number, value: 20 },
|
||
// 颜色,默认跟随当前文字色(currentColor 在 iconfont 下用具体色)
|
||
color: { type: String, value: '' },
|
||
},
|
||
data: { glyph: '' },
|
||
observers: {
|
||
name(n) {
|
||
this.setData({ glyph: (iconMap[n] || '') });
|
||
},
|
||
},
|
||
lifetimes: {
|
||
attached() {
|
||
this.setData({ glyph: (iconMap[this.data.name] || '') });
|
||
},
|
||
},
|
||
});
|