baseInfo.vue 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <template>
  2. <view>
  3. <view class="d-flex">
  4. <view class="user-left">
  5. <view class="user-name">{{ data?.name }}</view>
  6. <view class="ss-m-t-10">
  7. <span
  8. class="color-666"
  9. v-for="(key, index) in desc"
  10. :key="index"
  11. >
  12. {{ data[key] }}
  13. <span v-if="index !== desc.length - 1 && data[key]" class="ss-m-x-10">|</span>
  14. </span>
  15. </view>
  16. </view>
  17. <view class="user-avatar">
  18. <image :src="data?.avatar" alt="" mode="scaleToFill" />
  19. </view>
  20. </view>
  21. <view class="ss-m-t-10">
  22. <uni-tag
  23. v-for="(tag,i) in data?.tagList || []"
  24. :key="i"
  25. class="tag-gap ss-m-r-10"
  26. :text="tag"
  27. inverted="false"
  28. size="medium"
  29. custom-style="background-color: #ececec; color: #666; border-color: #ececec; display: inline-block;margin-bottom: 10px;"
  30. />
  31. </view>
  32. </view>
  33. </template>
  34. <script setup>
  35. defineProps({ data: Object })
  36. const desc = ['jobStatusName', 'eduName', 'expName']
  37. </script>
  38. <style scoped lang="scss">
  39. .user-avatar image {
  40. width: 65px;
  41. height: 65px;
  42. border-radius: 50%;
  43. }
  44. .user-left {
  45. flex: 1;
  46. .user-name {
  47. font-size: 25px;
  48. font-weight: 600;
  49. color: #0E100F;
  50. }
  51. }
  52. </style>