selectResumeDialog.vue 1017 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <!-- 选择简历 -->
  2. <template>
  3. <Dialog
  4. :visible="show"
  5. :widthType="2"
  6. titleClass="text-h6"
  7. :title="$t('resume.selectResumeToSubmit')"
  8. @close="emit('close')"
  9. @submit="emit('submit', selectResume)"
  10. >
  11. <v-radio-group v-model="selectResume">
  12. <v-radio v-for="val in list" :key="val.id" :value="val.id" :label="val.title" color="primary"></v-radio>
  13. </v-radio-group>
  14. </Dialog>
  15. </template>
  16. <script setup>
  17. import Dialog from '@/components/CtDialog'
  18. import { defineEmits, watch, computed, ref } from 'vue'
  19. defineOptions({name: 'position-details-selectResumeDialog'})
  20. const props = defineProps({
  21. list: {
  22. type: Array,
  23. default: () => []
  24. },
  25. modelValue: [Boolean, Number]
  26. })
  27. const emit = defineEmits(['update:modelValue', 'handleToUpload', 'submit', 'close'])
  28. const show = computed(() => {
  29. return props.modelValue
  30. })
  31. watch(() => show.value, (newVal) => {
  32. emit('update:modelValue', newVal)
  33. })
  34. const selectResume = ref()
  35. </script>
  36. <style lang="scss" scoped>
  37. </style>