sannong.vue 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  1. <template>
  2. <!-- pages/me.wxml -->
  3. <view class="container">
  4. <tabs :list="tabs" tab-class="tab-class" :showBadge="true" :swiper="true" activeColor="#07c160" normalColor="#000000" @change="tabChange">
  5. <tab-page :slot="item.name" v-for="(item, index) in tabs" :key="index">
  6. <!-- <view style="height: 100%;background-color: {{colors[index]}};">{{index}}</view> -->
  7. <view v-if="index == 0" class="container">
  8. <view class="rnwdList">
  9. <view class="list" @tap="goDetails" v-for="(item, index1) in qbwd" :key="index1">
  10. <span class="listTitle">{{ item.title }}</span>
  11. <view class="onePic" v-if="item.imgList.length == 1">
  12. <image :src="host + item.url" v-for="(item, index2) in item.imgList" :key="index2"></image>
  13. </view>
  14. <view class="twoPic" v-if="item.imgList.length == 2">
  15. <image :src="host + item.url" v-for="(item, index2) in item.imgList" :key="index2"></image>
  16. </view>
  17. <view class="threePic" v-if="item.imgList.length == 3">
  18. <image :src="host + item.url" v-for="(item, index2) in item.imgList" :key="index2"></image>
  19. </view>
  20. <view class="jlSj">
  21. <span class="jf">
  22. {{ item.jf }}
  23. <em class="iconfont icon-jifen"></em>
  24. </span>
  25. <view class="ck">
  26. <span>
  27. <em class="iconfont icon-pinglun"></em>
  28. {{ item.pl }}
  29. </span>
  30. <span>
  31. <em class="iconfont icon-chakan"></em>
  32. {{ item.ck }}
  33. </span>
  34. <span>
  35. <em class="iconfont icon-shoucang"></em>
  36. {{ item.dz }}
  37. </span>
  38. </view>
  39. </view>
  40. </view>
  41. </view>
  42. </view>
  43. <view v-if="index == 1" class="container">
  44. <view class="rnwdList">
  45. <view class="list" @tap="goDetails" v-for="(item, index1) in jcwd" :key="index1">
  46. <span class="listTitle">{{ item.title }}</span>
  47. <view class="onePic" v-if="item.imgList.length == 1">
  48. <image :src="host + item.url" v-for="(item, index2) in item.imgList" :key="index2"></image>
  49. </view>
  50. <view class="twoPic" v-if="item.imgList.length == 2">
  51. <image :src="host + item.url" v-for="(item, index2) in item.imgList" :key="index2"></image>
  52. </view>
  53. <view class="threePic" v-if="item.imgList.length == 3">
  54. <image :src="host + item.url" v-for="(item, index2) in item.imgList" :key="index2"></image>
  55. </view>
  56. <view class="jlSj">
  57. <span class="jf">
  58. {{ item.jf }}
  59. <em class="iconfont icon-jifen"></em>
  60. </span>
  61. <view class="ck">
  62. <span>
  63. <em class="iconfont icon-pinglun"></em>
  64. {{ item.pl }}
  65. </span>
  66. <span>
  67. <em class="iconfont icon-chakan"></em>
  68. {{ item.ck }}
  69. </span>
  70. <span>
  71. <em class="iconfont icon-shoucang"></em>
  72. {{ item.dz }}
  73. </span>
  74. </view>
  75. </view>
  76. </view>
  77. </view>
  78. </view>
  79. <view v-if="index == 2" class="container">
  80. <view class="rnwdList">
  81. <view class="list" @tap="goDetails" v-for="(item, index1) in zdxs" :key="index1">
  82. <span class="listTitle">{{ item.title }}</span>
  83. <view class="onePic" v-if="item.imgList.length == 1">
  84. <image :src="host + item.url" v-for="(item, index2) in item.imgList" :key="index2"></image>
  85. </view>
  86. <view class="twoPic" v-if="item.imgList.length == 2">
  87. <image :src="host + item.url" v-for="(item, index2) in item.imgList" :key="index2"></image>
  88. </view>
  89. <view class="threePic" v-if="item.imgList.length == 3">
  90. <image :src="host + item.url" v-for="(item, index2) in item.imgList" :key="index2"></image>
  91. </view>
  92. <view class="jlSj">
  93. <span class="jf">
  94. {{ item.jf }}
  95. <em class="iconfont icon-jifen"></em>
  96. </span>
  97. <view class="ck">
  98. <span>
  99. <em class="iconfont icon-pinglun"></em>
  100. {{ item.pl }}
  101. </span>
  102. <span>
  103. <em class="iconfont icon-chakan"></em>
  104. {{ item.ck }}
  105. </span>
  106. <span>
  107. <em class="iconfont icon-shoucang"></em>
  108. {{ item.dz }}
  109. </span>
  110. </view>
  111. </view>
  112. </view>
  113. </view>
  114. </view>
  115. </tab-page>
  116. </tabs>
  117. </view>
  118. </template>
  119. <script>
  120. import tabs from '../../components/tabs/tabs';
  121. import tabPage from '../../components/tab-page/tab-page';
  122. // pages/me.js
  123. var localData = require('../../data/json');
  124. const app = getApp();
  125. export default {
  126. components: {
  127. tabs,
  128. tabPage
  129. },
  130. data() {
  131. return {
  132. host: app.globalData.host,
  133. currentIndex: 0,
  134. //默认是活动项
  135. qbwd: '',
  136. jcwd: '',
  137. zdxs: '',
  138. tabs: [
  139. {
  140. name: '全部问答'
  141. },
  142. {
  143. name: '精彩问答'
  144. },
  145. {
  146. name: '最多悬赏'
  147. }
  148. ]
  149. };
  150. },
  151. /**
  152. * 生命周期函数--监听页面加载
  153. */
  154. onLoad(options) {
  155. this.setData({
  156. qbwd: localData.qnwdList,
  157. jcwd: localData.jcwdList,
  158. zdxs: localData.zdxsList
  159. });
  160. },
  161. /**
  162. * 生命周期函数--监听页面初次渲染完成
  163. */
  164. onReady() {},
  165. /**
  166. * 生命周期函数--监听页面显示
  167. */
  168. onShow() {},
  169. /**
  170. * 生命周期函数--监听页面隐藏
  171. */
  172. onHide() {},
  173. /**
  174. * 生命周期函数--监听页面卸载
  175. */
  176. onUnload() {},
  177. /**
  178. * 页面相关事件处理函数--监听用户下拉动作
  179. */
  180. onPullDownRefresh() {},
  181. /**
  182. * 页面上拉触底事件的处理函数
  183. */
  184. onReachBottom() {},
  185. /**
  186. * 用户点击右上角分享
  187. */
  188. onShareAppMessage() {},
  189. methods: {
  190. // // 切换swiper-item触发bindchange事件
  191. // pagechange: function (e) {
  192. // // 通过touch判断,改变tab的下标值
  193. // if ("touch" === e.detail.source) {
  194. // let currentPageIndex = this.data.currentIndex;
  195. // currentPageIndex = (currentPageIndex + 1) % 2;
  196. // // 拿到当前索引并动态改变
  197. // this.setData({
  198. // currentIndex: currentPageIndex,
  199. // })
  200. // }
  201. // },
  202. // //点击tab时触发
  203. // titleClick: function (e) {
  204. // this.setData({
  205. // //拿到当前索引并动态改变
  206. // currentIndex: e.currentTarget.dataset.idx
  207. // })
  208. // },
  209. tabChange: function (e) {},
  210. goDetails() {
  211. uni.navigateTo({
  212. url: '../wenbaxiangqing/wenbaxiangqing'
  213. });
  214. }
  215. }
  216. };
  217. </script>
  218. <style>
  219. @import './sannong.css';
  220. </style>