list.vue 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <template>
  2. <view class="box">
  3. <view class="boxlist">
  4. <view @click="nextTo(item)" class="bb vidLi dfsb" v-for="(item, ind) in list" :key="ind">
  5. <image class="imgbox" :src="item.img" mode=""></image>
  6. <view class="dffd flex1">
  7. <view class="title elli">{{ item.title }}</view>
  8. <view class="textgrey fontsm">{{ item.up_name }}</view>
  9. <view v-if="flag == 2" class="auth dfsb">
  10. <text class="fontssm textgrey">作者:{{ item.up_name }}</text>
  11. <text class="fontssm textgrey">{{ item.see_num }}人下载</text>
  12. </view>
  13. </view>
  14. <image v-if="flag == 3" class="down" src="/static/img/pro/navdown.png" mode=""></image>
  15. </view>
  16. </view>
  17. </view>
  18. </template>
  19. <script>
  20. export default {
  21. data() {
  22. return {};
  23. },
  24. props: {
  25. list: {
  26. type: Array,
  27. default: []
  28. },
  29. flag: {
  30. type: [String, Number],
  31. default: 1
  32. }
  33. },
  34. methods: {
  35. nextTo(item) {
  36. uni.navigateTo({
  37. url: '/pages/index/video/videoInfo?id='+item.id
  38. });
  39. }
  40. }
  41. };
  42. </script>
  43. <style scoped lang="scss">
  44. .boxlist {
  45. .vidLi {
  46. width: 100%;
  47. padding: 27rpx 0;
  48. background-color: #fff;
  49. &:nth-of-type(2n) {
  50. margin-right: 0;
  51. }
  52. .imgbox {
  53. width: 146rpx;
  54. height: 146rpx;
  55. margin-right: 18rpx;
  56. border-radius: 10rpx;
  57. }
  58. .title {
  59. font-size: 28rpx;
  60. line-height: 40rpx;
  61. margin-bottom: 12rpx;
  62. }
  63. .auth {
  64. margin-top: 15rpx;
  65. width: 100%;
  66. }
  67. .down {
  68. width: 35rpx;
  69. height: 30rpx;
  70. margin-left: 58rpx;
  71. }
  72. }
  73. }
  74. </style>