popularEnterprises.vue 930 B

1234567891011121314151617181920212223242526272829
  1. <template>
  2. <div>
  3. <HotPromoted :items="items"></HotPromoted>
  4. <div class="text-center">
  5. <v-btn class="buttons" color="primary" to="/recruit/personal/company">{{ $t('enterprise.moreBtn') }}</v-btn>
  6. </div>
  7. </div>
  8. </template>
  9. <script setup name="popularEnterprises">
  10. import HotPromoted from '@/components/Enterprise/hotPromoted.vue'
  11. import { ref } from 'vue'
  12. import { getHotEnterprise } from '@/api/enterprise'
  13. import { dealDictArrayData, dealDictObjData } from '@/utils/position'
  14. const items = ref([])
  15. // 热门企业
  16. const getHotEnterpriseList = async () => {
  17. const { list } = await getHotEnterprise({ pageNo: 1, pageSize: 9 })
  18. items.value = list.map(e => {
  19. let jobList = []
  20. const enterprise = dealDictObjData({}, e.enterprise)
  21. if (e.jobList && e.jobList.length) jobList = dealDictArrayData([], e.jobList).slice(0, 3)
  22. return { enterprise, jobList }
  23. })
  24. }
  25. getHotEnterpriseList()
  26. </script>