selectTypes.vue 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. <template>
  2. <view class="select-types-box">
  3. <view class="types-item" :class="{active: activeSelect == 1}" @click="handleClick(0)">学</view>
  4. <icon class="jt-item" :class="{active: activeSelect == 1}"></icon>
  5. <view class="types-item" :class="{active: activeSelect == 2}" @click="handleClick(1)">拼</view>
  6. <icon class="jt-item" :class="{active: activeSelect == 2}"></icon>
  7. <view class="types-item" :class="{active: activeSelect == 3}" @click="handleClick(2)">读</view>
  8. <icon class="jt-item" :class="{active: activeSelect == 3}"></icon>
  9. <view class="types-item" :class="{active: activeSelect == 4}" @click="handleClick(3)">选</view>
  10. <icon class="jt-item" :class="{active: activeSelect == 4}"></icon>
  11. <view class="types-item" :class="{active: activeSelect == 5}" @click="handleClick(4)">背</view>
  12. </view>
  13. </template>
  14. <script setup>
  15. defineProps({
  16. activeSelect: {
  17. type: [String,Number],
  18. required: true
  19. }
  20. })
  21. const emits = defineEmits(['change'])
  22. function handleClick(code) {
  23. emits('change',code)
  24. }
  25. </script>
  26. <style lang="scss" scoped>
  27. .select-types {
  28. display: flex;
  29. justify-content: space-between;
  30. }
  31. .active {
  32. color: red;
  33. }
  34. </style>