list.vue 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. <template>
  2. <div class="container">
  3. <div class="header">
  4. <img src="@/assets/logo-home.png" />
  5. </div>
  6. <div class="flex">用户名:{{ user.userName }}</div>
  7. <vitualList class="flex-1" style="height:100%" :list="list"></vitualList>
  8. <!-- <div class="mtb-20"
  9. v-for="item in list"
  10. :key="item.id">
  11. <img :src="item.img" />
  12. <div>{{ item.name }}</div>
  13. </div> -->
  14. </div>
  15. </template>
  16. <script>
  17. import { getMuchList } from '@/api/login.js';
  18. import { mapGetters } from 'vuex';
  19. import vitualList from '@/components/vitualList/index';
  20. export default {
  21. components: {
  22. vitualList
  23. },
  24. data() {
  25. return {
  26. list: [],
  27. queryParams: { page: 1, size: 5 },
  28. loading: false,
  29. finished: false
  30. };
  31. },
  32. computed: {
  33. ...mapGetters(['user'])
  34. },
  35. methods: {
  36. async getList() {
  37. let res = await getMuchList();
  38. this.list = res.data.slice(0,20);
  39. }
  40. },
  41. mounted() {
  42. this.getList();
  43. }
  44. };
  45. </script>
  46. <style>
  47. @import url('../../assets/css/main.css');
  48. .container{
  49. height: 100%;
  50. }
  51. .flex {
  52. display: flex;
  53. align-items: center;
  54. justify-content: center;
  55. }
  56. .flex-col {
  57. display: flex;
  58. flex-direction: column;
  59. align-items: center;
  60. justify-content: center;
  61. }
  62. .mtb-20 {
  63. margin: 20px 0;
  64. }
  65. .login-out {
  66. position: fixed;
  67. top: 10px;
  68. right: 20px;
  69. }
  70. </style>