UserIdToUsername.vue 612 B

123456789101112131415161718192021222324252627282930313233343536
  1. <template>
  2. <router-link
  3. v-if="$props.link && username !== 'unknown'"
  4. :to="{ path: `/u/${username}` }"
  5. :title="userId"
  6. >
  7. {{ username }}
  8. </router-link>
  9. <span :title="userId" v-else>
  10. {{ username }}
  11. </span>
  12. </template>
  13. <script>
  14. import { mapActions } from "vuex";
  15. export default {
  16. props: {
  17. userId: { type: String, default: "" },
  18. link: Boolean
  19. },
  20. data() {
  21. return {
  22. username: "unknown"
  23. };
  24. },
  25. methods: {
  26. ...mapActions("user/auth", ["getUsernameFromId"])
  27. },
  28. mounted() {
  29. this.getUsernameFromId(this.$props.userId).then(res => {
  30. if (res) this.username = res;
  31. });
  32. }
  33. };
  34. </script>