t-i-news.vue 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. <template>
  2. <view class="content">
  3. <view class="title">
  4. <view class="text" v-if="mine_code == 'wuyegongsi'">每日动态</view>
  5. <view class="text" v-else>新闻动态</view>
  6. <view class="more" @click="go_more()">查看全部 <uni-icons type="arrowright" color="#999" size="11"></uni-icons>
  7. </view>
  8. </view>
  9. <view class="list">
  10. <view class="item" v-for="(item,index) in newsList" :key="index" @click="go_detail(item)">
  11. <view class="left">
  12. <image :src="item.main_img"></image>
  13. </view>
  14. <view class="right">
  15. <view class="title">{{item.title}}</view>
  16. <view class="time">{{item.created_at}}</view>
  17. </view>
  18. </view>
  19. </view>
  20. </view>
  21. </template>
  22. <script>
  23. export default {
  24. name: "t-i-news",
  25. props: [
  26. "newsList",
  27. "mine_code"
  28. ],
  29. data() {
  30. return {
  31. list: []
  32. };
  33. },
  34. methods: {
  35. // 打开详情页
  36. go_detail(item) {
  37. // uni.navigateTo({
  38. // url: "../../index/news/news?id=" + item.id + "&mine_code=" + this.mine_code
  39. // })
  40. if (this.mine_code != "zaoquan") {
  41. uni.navigateTo({
  42. url: "../../index/h5/h5?url=" + item.detail_url
  43. })
  44. } else {
  45. uni.navigateTo({
  46. url: "../../index/news/news_type/detail/detail?title=" + item.title,
  47. success: function(res) {
  48. res.eventChannel.emit('acceptDataFromOpenerPage', {
  49. data: item
  50. })
  51. }
  52. })
  53. }
  54. },
  55. // 打开列表
  56. go_more() {
  57. if (this.mine_code != "zaoquan") {
  58. uni.navigateTo({
  59. url: "../../index/news/news_list/news_list?mine_code=" + this.mine_code
  60. })
  61. } else {
  62. uni.navigateTo({
  63. url: "../../index/news/news_type/news_type?mine_code=" + this.mine_code
  64. })
  65. }
  66. }
  67. }
  68. }
  69. </script>
  70. <style lang="scss">
  71. .content {
  72. margin-top: 0;
  73. margin-bottom: 20rpx;
  74. background-color: #FFFFFF;
  75. box-sizing: border-box;
  76. padding: 30rpx 25rpx;
  77. }
  78. .title {
  79. display: flex;
  80. align-items: baseline;
  81. justify-content: space-between;
  82. .text {
  83. font-size: 36rpx;
  84. }
  85. .more {
  86. font-size: 26rpx;
  87. color: #999;
  88. }
  89. }
  90. .list {
  91. margin-top: 20rpx;
  92. width: 700rpx;
  93. .item {
  94. box-sizing: border-box;
  95. padding-top: 20rpx;
  96. padding-bottom: 12rpx;
  97. display: flex;
  98. .left {
  99. width: 240rpx;
  100. height: 136rpx;
  101. image {
  102. width: 240rpx;
  103. height: 136rpx;
  104. border-radius: 8rpx;
  105. overflow: hidden;
  106. }
  107. }
  108. .right {
  109. margin-left: 22rpx;
  110. display: flex;
  111. flex-flow: column;
  112. justify-content: space-around;
  113. .title {
  114. overflow: hidden;
  115. -webkit-line-clamp: 2;
  116. text-overflow: ellipsis;
  117. display: -webkit-box;
  118. -webkit-box-orient: vertical;
  119. font-size: 32rpx;
  120. font-weight: 400;
  121. color: #121212;
  122. line-height: 40rpx;
  123. }
  124. .time {
  125. font-size: 26rpx;
  126. font-weight: 400;
  127. color: #999;
  128. line-height: 40rpx;
  129. }
  130. }
  131. }
  132. }
  133. </style>