vocationalSkills.vue 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <template>
  2. <div>
  3. <div
  4. :class="['dataList-item']"
  5. v-for="(k, i) in dataList"
  6. :key="i"
  7. >
  8. <span >{{ getText(k.skillId, skillList, 'nameCn', 'id') }}</span>
  9. <span class="septal-line"></span>
  10. <span style="color: var(--color-999);">{{ getText(k.level, skillLevelArr) }}</span>
  11. </div>
  12. </div>
  13. </template>
  14. <script setup>
  15. import { getText } from '@/utils/getText'
  16. import { getDict } from '@/hooks/web/useDictionaries'
  17. import { getSkillList } from '@/api/recruit/personal/resume'
  18. import { ref } from 'vue'
  19. defineOptions({name: 'enterprise-talentPool-details-vocationalSkills'})
  20. const props = defineProps({
  21. data: Array
  22. })
  23. const dataList = ref([])
  24. if (props.data?.length) dataList.value = props.data
  25. const skillLevelArr = ref([])
  26. getDict('menduner_skill_level').then(({ data }) => { // 字典
  27. data = data?.length && data || []
  28. skillLevelArr.value = data
  29. })
  30. const skillList = ref([])
  31. // 获取 职业技能列表(一维数组回显用)
  32. const getSkillListFunc = async () => {
  33. const data = await getSkillList()
  34. skillList.value = data || []
  35. }
  36. getSkillListFunc()
  37. </script>
  38. <style lang="scss" scoped>
  39. .dataList-item {
  40. border-radius: 6px;
  41. span {
  42. font-size: 15px;
  43. }
  44. .grey-text {
  45. color: var(--color-999);
  46. }
  47. }
  48. </style>