| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- <template>
- <!--
- 薄包装(T25 统一成员选择器):委托 MemberSelector variant="tabs"。
- 保持旧组件 API(props/事件)不变,任何残留调用点仍会走 memberNormalize 折叠去重。
- 新页面请直接使用 components/MemberSelector.vue。
- -->
- <MemberSelector
- variant="tabs"
- :members="members"
- :selectedMemberId="selectedMemberId"
- :dimensionCode="dimensionCode"
- :scoreMap="scoreMap"
- @select="onSelect"
- @longpress="onLongPress"
- @manage="onManage"
- @removed="onRemoved" />
- </template>
- <script>
- import MemberSelector from '@/components/MemberSelector.vue'
- export default {
- name: 'DimensionMemberTabs',
- components: { MemberSelector },
- props: {
- members: { type: Array, default: function() { return [] } },
- selectedMemberId: { type: [Number, String], default: null },
- // 所属维度码:body / mind / wisdom / wealth / action,决定选中态配色
- dimensionCode: { type: String, default: 'body' },
- // { memberId: score },用于在标签上直接显示该成员的维度分数
- scoreMap: { type: Object, default: function() { return {} } }
- },
- methods: {
- onSelect: function(member) { this.$emit('select', member) },
- onLongPress: function(member) { this.$emit('longpress', member) },
- onManage: function() { this.$emit('manage') },
- onRemoved: function(member) { this.$emit('removed', member) }
- }
- }
- </script>
|