heads.vue 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <template>
  2. <div id="heads">
  3. <div class="w_0100">
  4. <div class="superbanner">
  5. <img :src="top_bg" />
  6. </div>
  7. <div class="supertop">
  8. <div class="w_1200">
  9. <p>
  10. 欢迎来到吉林省计算中心科技平台
  11. </p>
  12. <p>
  13. <span v-if="user && user.name"
  14. >{{ user.name }}
  15. <button type="button" class="logininfo" @click="zhuxiao">注销</button>
  16. </span>
  17. </p>
  18. </div>
  19. </div>
  20. <div class="superlogo">
  21. <div class="w_1200">
  22. <a href="/platlive">
  23. <img :src="logo" />
  24. <span>
  25. 吉林省计算中心科技平台
  26. </span>
  27. </a>
  28. </div>
  29. </div>
  30. <div class="supermenu">
  31. <div class="w_1200"></div>
  32. </div>
  33. </div>
  34. </div>
  35. </template>
  36. <script>
  37. import { mapState, createNamespacedHelpers } from 'vuex';
  38. const { mapActions: login } = createNamespacedHelpers('login');
  39. export default {
  40. name: 'heads',
  41. props: {},
  42. components: {},
  43. data: () => {
  44. return {
  45. top_bg: require('@/assets/live/top_bg.png'),
  46. logo: require('@/assets/live/logo.png'),
  47. };
  48. },
  49. created() {},
  50. methods: {
  51. ...login({ logout: 'logout', transactiondtetle: 'delete' }),
  52. async zhuxiao() {
  53. this.logout();
  54. this.$message({
  55. message: '注销成功',
  56. type: 'success',
  57. });
  58. this.toLogin();
  59. },
  60. async toLogin() {
  61. this.$router.push({ path: '/platlive' });
  62. },
  63. },
  64. computed: {
  65. ...mapState(['user']),
  66. },
  67. };
  68. </script>
  69. <style lang="less" scoped>
  70. @import '~@/style/style.css';
  71. .logininfo {
  72. font-size: 20px;
  73. margin: 0 0 0 5px;
  74. }
  75. /deep/.superbanner {
  76. position: relative;
  77. height: 250px;
  78. overflow: hidden;
  79. margin: 0 0 15px 0;
  80. }
  81. </style>