Component({ properties: { /** 评分 0-10,超出范围自动 clamp */ score: { type: Number, value: 0, }, }, data: { heartEmoji: '💙', }, observers: { score(val: number) { const s = val < 0 ? 0 : val > 10 ? 10 : val let emoji: string if (s > 8.5) { emoji = '💖' } else if (s > 7) { emoji = '🧡' } else if (s > 5) { emoji = '💛' } else { emoji = '💙' } this.setData({ heartEmoji: emoji }) }, }, })