ViewHeader.vue 797 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <template>
  2. <div class="view-header">
  3. <div class="head-logo">
  4. <slot name="logo">
  5. <!-- big logo 160*40 -->
  6. <h1>LOGO</h1>
  7. </slot>
  8. </div>
  9. <div class="head-user">
  10. <span class="user-name"
  11. ><Icon type="md-person" size="16" /> {{ username }}</span
  12. >
  13. <span class="user-logout" @click="logout">
  14. <Icon type="md-power" size="20" />
  15. </span>
  16. </div>
  17. <div class="head-info">
  18. <slot name="info"></slot>
  19. </div>
  20. </div>
  21. </template>
  22. <script>
  23. export default {
  24. name: "view-header",
  25. data() {
  26. return {};
  27. },
  28. computed: {
  29. username() {
  30. return this.$store.state.user.name;
  31. }
  32. },
  33. methods: {
  34. logout() {
  35. this.$ls.clear();
  36. this.$router.push({ name: "Login" });
  37. }
  38. }
  39. };
  40. </script>