allview.vue 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. <template>
  2. <view class="avw">
  3. <!-- <view class="tabs">
  4. <u-tabs height="80" :is-scroll="false" :list="list1" @click="changeTab"></u-tabs>
  5. </view>
  6. <view v-if="current == 1">
  7. <tabsColumn :openType="current"></tabsColumn>
  8. </view>
  9. <view v-else>
  10. <tabsColumn :openType="current"></tabsColumn>
  11. </view> -->
  12. <tabsColumn :tabsItem="tabsItem" :curNowdata="curNowdata" :tabsList="tabsList" :openType="current"></tabsColumn>
  13. </view>
  14. </template>
  15. <script>
  16. import tabsColumn from './base/tabs-column.vue'
  17. import * as util from '@/pages/util/util.js'
  18. import {getMenuListByOpen,getArticleByOpen} from '@/http/api/common.js'
  19. export default {
  20. data() {
  21. return {
  22. list1: [{
  23. name: '最新资讯',
  24. key :'1'
  25. }, {
  26. name: '视频资讯',
  27. key:'2'
  28. }],
  29. current:'1',
  30. curNowsubid:'1',
  31. curNowid:'1',
  32. tabsList: [],//右侧内容
  33. tabsItem: [],//左侧菜单
  34. }
  35. },
  36. components: {
  37. tabsColumn
  38. },
  39. async onLoad(e) {
  40. this.curNowdata = e
  41. await this.initData(e)
  42. },
  43. onShow() {
  44. },
  45. computed:{
  46. },
  47. methods: {
  48. async initData(e){
  49. //获取文章分类和数据
  50. let res = await getMenuListByOpen()
  51. if (res.data.code == 200 ) {
  52. this.tabsItem = res.data.data.map(v => {
  53. return v.name
  54. })
  55. //固定添加模块
  56. this.tabsItem.push('互动天地')
  57. res.data.data.forEach(item => {
  58. if (item.id == e.curNowid) {
  59. item.check = true
  60. }else{
  61. item.check = false
  62. }
  63. item.columnMenuSubList.forEach(v =>{
  64. if (v?.id == e.curNowsubid) {
  65. v.plain = false
  66. }else{
  67. v.plain = true
  68. }
  69. })
  70. });
  71. this.tabsList = res.data.data
  72. this.tabsList.push({
  73. name:'互动天地',
  74. columnMenuSubList:[{
  75. name:'互动天地',
  76. plain:true
  77. }]
  78. })
  79. }
  80. },
  81. }
  82. }
  83. </script>
  84. <style>
  85. .tabs{
  86. display: flex;
  87. justify-content: center;
  88. }
  89. </style>