UserNameTag.vue 576 B

123456789101112131415161718192021222324252627
  1. <template>
  2. <text>{{ username }}</text>
  3. </template>
  4. <script setup lang="ts">
  5. import {ref} from "vue";
  6. import {useUserStore} from "@/store/userStore";
  7. import UserApi from "@/api/UserApi";
  8. const username = ref("");
  9. const props = defineProps({
  10. id: {
  11. type: String,
  12. default: "",
  13. },
  14. });
  15. const userStore = useUserStore();
  16. const user = userStore.getMapUser(props.id);
  17. user
  18. ? (username.value = user.name)
  19. : UserApi.getUser(props.id).then((res) => {
  20. username.value = res?.data?.name;
  21. userStore.setUser(res?.data)
  22. });
  23. </script>
  24. <style scoped></style>