fs-keyboard.vue 814 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <template>
  2. <view>
  3. <keyboardCar
  4. v-if="mode === 'car'"
  5. :index="index"
  6. v-model="modelValue"
  7. @change="handleChange"
  8. @close="handleClose">
  9. </keyboardCar>
  10. <keyboardNum
  11. v-if="mode === 'number'"
  12. :index="index"
  13. v-model="modelValue"
  14. @change="handleChange"
  15. @close="handleClose"
  16. />
  17. </view>
  18. </template>
  19. <script setup>
  20. import keyboardCar from './car.vue'
  21. import keyboardNum from './number.vue'
  22. const props = defineProps({
  23. modelValue: Boolean,
  24. mode: {
  25. type: String,
  26. default: 'car'
  27. },
  28. index: {
  29. type: Number,
  30. default: 0
  31. }
  32. })
  33. const emits = defineEmits(['update:modelValue', 'change', 'close'])
  34. const handleChange = item => {
  35. emits('change', item)
  36. }
  37. const handleClose = () => {
  38. emits('update:modelValue', false)
  39. emits('close')
  40. }
  41. </script>
  42. <style lang="scss">
  43. </style>