index.vue 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. <template>
  2. <div id="index">
  3. <admin-frame :useTop="false" :usePage="false" :useNav="false">
  4. <template v-slot:info>
  5. <van-button v-for="(i, index) in menu" :key="`menu-${index}`" @click="$router.push(i.router)">{{ i.label }}</van-button>
  6. </template>
  7. </admin-frame>
  8. </div>
  9. </template>
  10. <script>
  11. import adminFrame from '@frame/src/components/mobile-frame/mobile-main.vue';
  12. import { mapState, createNamespacedHelpers } from 'vuex';
  13. const { mapActions: personal } = createNamespacedHelpers('personal');
  14. export default {
  15. name: 'index',
  16. props: {},
  17. components: {
  18. adminFrame,
  19. },
  20. data: function () {
  21. return {
  22. menu: [
  23. {
  24. label: '专利超市-专利检索',
  25. router: '/market/patentInfo/index',
  26. },
  27. {
  28. label: '专利超市-专利转让',
  29. router: '/market/transfer/index',
  30. },
  31. {
  32. label: '专利超市-专利需求',
  33. router: '/market/demand/index',
  34. },
  35. {
  36. label: '专利超市-专利导航',
  37. router: '/market/navigation/index',
  38. },
  39. {
  40. label: '咨询服务-政策资讯',
  41. router: '/service/notice/index',
  42. },
  43. {
  44. label: '咨询服务-法律法规',
  45. router: '/service/law/index',
  46. },
  47. {
  48. label: '咨询服务-专利维权',
  49. router: '/service/dimension/index',
  50. },
  51. {
  52. label: '咨询服务-交流互动',
  53. router: '/service/interflow/index',
  54. },
  55. {
  56. label: '个人中心-我的消息',
  57. router: '/patent/index',
  58. },
  59. {
  60. label: '个人中心-我的申请',
  61. router: '/patent/index',
  62. },
  63. {
  64. label: '个人中心-我的专利',
  65. router: '/patent/index',
  66. },
  67. {
  68. label: '个人中心-我的交易',
  69. router: '/patent/index',
  70. },
  71. {
  72. label: '个人中心-个人设置',
  73. router: '/account/index',
  74. },
  75. ],
  76. };
  77. },
  78. async created() {
  79. await this.search();
  80. },
  81. methods: {
  82. ...personal({ personalCreate: 'create' }),
  83. search({ skip = 0, limit = this.limit, ...info } = {}) {},
  84. },
  85. computed: {
  86. ...mapState(['user']),
  87. },
  88. metaInfo() {
  89. return { title: this.$route.meta.title };
  90. },
  91. watch: {
  92. test: {
  93. deep: true,
  94. immediate: true,
  95. handler(val) {},
  96. },
  97. },
  98. };
  99. </script>
  100. <style lang="less" scoped></style>