UserTools.vue 976 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <template lang="html">
  2. <div id="user-tools">
  3. <h4
  4. class="mdi mdi-account"
  5. >{{ mail }}</h4>
  6. <a href="/admin/content/materials"
  7. v-if="isAdmin"
  8. class="mdi mdi-settings"
  9. title="admin"
  10. ></a>
  11. <a href="/user/logout"
  12. @click.prevent="onLogout()"
  13. class="mdi mdi-logout"
  14. title="logout"
  15. ></a>
  16. </div>
  17. </template>
  18. <script>
  19. import { mapState, mapActions } from 'vuex'
  20. export default {
  21. // data () {
  22. // return {
  23. // mail: "Hello User!"
  24. // }
  25. // },
  26. computed: {
  27. ...mapState({
  28. mail: state => state.User.mail,
  29. isAdmin: state => state.User.isAdmin
  30. })
  31. },
  32. methods: {
  33. ...mapActions({
  34. userLogout: 'User/userLogout'
  35. }),
  36. onLogout () {
  37. this.userLogout()
  38. }
  39. }
  40. }
  41. </script>
  42. <style lang="css" scoped>
  43. #user-tools{
  44. margin-right:0.5em;
  45. padding-right:0.5em;
  46. border-right:1px solid #222;
  47. }
  48. h4{
  49. margin:0;
  50. display:inline-block;
  51. font-size:inherited;
  52. }
  53. </style>