detail.vue 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  1. <template>
  2. <view class="infoDetail">
  3. <!-- 标题 -->
  4. <view class="infoTitle">
  5. IOS16升级支持名单曝光IOS16升级支持名单曝光
  6. </view>
  7. <!-- 浏览量 & 时间 -->
  8. <view class="infoTime">
  9. <view class="viewCount">
  10. <i class="custom-icon custom-icon-view"></i>
  11. 2145
  12. </view>
  13. <view class="time">
  14. 7小时前
  15. </view>
  16. </view>
  17. <!-- 主体内容 -->
  18. <view class="infoContent">
  19. 资讯内容带缩略图的新闻标题,最多显示三行超出长度街区为省略号
  20. 度街区为省略号度街区为省略号带缩略图的新闻带缩略图的
  21. 新闻标题,最多显示三行超出长度街区为省略号度街区为省
  22. 略号度街区为省略号带缩略图的新闻...带缩略图的新闻标
  23. 题,最多显示三行超出长度街区为省略号度街区为省略号度
  24. 街区为省略号带缩略图的新闻...带缩略图的新闻标题,最多
  25. 显示三行超出长度街区为省略号度街区为省略号度街区为省
  26. 略号带缩略图的新闻...带缩略图的新闻标题,最多显示三行
  27. 超出长度街区为省略号度街区为省略号度街区为省略号带缩
  28. 略图的新闻带缩略图的新闻标题,最多显示三行超出长度街
  29. 资讯内容带缩略图的新闻标题,最多显示三行超出长度街区为省略号
  30. 度街区为省略号度街区为省略号带缩略图的新闻带缩略图的
  31. 新闻标题,最多显示三行超出长度街区为省略号度街区为省
  32. 略号度街区为省略号带缩略图的新闻...带缩略图的新闻标
  33. 题,最多显示三行超出长度街区为省略号度街区为省略号度
  34. 街区为省略号带缩略图的新闻...带缩略图的新闻标题,最多
  35. 显示三行超出长度街区为省略号度街区为省略号度街区为省
  36. 略号带缩略图的新闻...带缩略图的新闻标题,最多显示三行
  37. 超出长度街区为省略号度街区为省略号度街区为省略号带缩
  38. 略图的新闻带缩略图的新闻标题,最多显示三行超出长度街资讯内容带缩略图的新闻标题,最多显示三行超出长度街区为省略号
  39. 度街区为省略号度街区为省略号带缩略图的新闻带缩略图的
  40. 新闻标题,最多显示三行超出长度街区为省略号度街区为省
  41. 略号度街区为省略号带缩略图的新闻...带缩略图的新闻标
  42. 题,最多显示三行超出长度街区为省略号度街区为省略号度
  43. 街区为省略号带缩略图的新闻...带缩略图的新闻标题,最多
  44. 显示三行超出长度街区为省略号度街区为省略号度街区为省
  45. 略号带缩略图的新闻...带缩略图的新闻标题,最多显示三行
  46. 超出长度街区为省略号度街区为省略号度街区为省略号带缩
  47. 略图的新闻带缩略图的新闻标题,最多显示三行超出长度街资讯内容带缩略图的新闻标题,最多显示三行超出长度街区为省略号
  48. 度街区为省略号度街区为省略号带缩略图的新闻带缩略图的
  49. 新闻标题,最多显示三行超出长度街区为省略号度街区为省
  50. 略号度街区为省略号带缩略图的新闻...带缩略图的新闻标
  51. 题,最多显示三行超出长度街区为省略号度街区为省略号度
  52. 街区为省略号带缩略图的新闻...带缩略图的新闻标题,最多
  53. 显示三行超出长度街区为省略号度街区为省略号度街区为省
  54. 略号带缩略图的新闻...带缩略图的新闻标题,最多显示三行
  55. 超出长度街区为省略号度街区为省略号度街区为省略号带缩
  56. 略图的新闻带缩略图的新闻标题,最多显示三行超出长度街
  57. </view>
  58. <!-- 底部评论、收藏量、转发-->
  59. <view class="bottom">
  60. <!--评论框 -->
  61. <u--input placeholder="写评论" prefixIcon="edit-pen"
  62. prefixIconStyle="font-size: 22px;color: #909399;margin-left:10px" border="none"
  63. :customStyle="{backgroundColor: '#eee'}"></u--input>
  64. <!-- 收藏、评论量 -->
  65. <view class="count">
  66. <view class="collect">
  67. <i class="custom-icon custom-icon-collected"></i>
  68. 2145
  69. </view>
  70. <view class="comment" @click="handleComment">
  71. <i class="custom-icon custom-icon-comment"></i>
  72. 543
  73. </view>
  74. </view>
  75. <!-- 转发 -->
  76. <u-button type="primary" color="linear-gradient(to top, #f8551d, #f69e36)" @click="handleShare"><i
  77. class="custom-icon custom-icon-share"></i></u-button>
  78. </view>
  79. <!-- 分享弹出组件 -->
  80. <Share :show="shareShow" @close="closeShare" />
  81. <!-- 评论弹出组件 -->
  82. <Comment :show="commentShow" @close="closeComment" />
  83. </view>
  84. </template>
  85. <script>
  86. import Share from '@/components/Share/index.vue'
  87. import Comment from '@/components/Comment/index.vue'
  88. export default {
  89. components: {
  90. Share,
  91. Comment
  92. },
  93. data() {
  94. return {
  95. shareShow: false,
  96. commentShow: false
  97. };
  98. },
  99. async onReady() {
  100. // 详情数据
  101. const item = uni.getStorageSync('infoDetail')
  102. console.log(item)
  103. },
  104. methods: {
  105. // 点击弹出分享框
  106. handleShare() {
  107. this.shareShow = true
  108. },
  109. // 关闭分享弹出窗
  110. closeShare() {
  111. this.shareShow = false
  112. },
  113. // 点击弹出评论列表
  114. handleComment() {
  115. this.commentShow = true
  116. },
  117. // 关闭分享弹出窗
  118. closeComment() {
  119. this.commentShow = false
  120. },
  121. }
  122. }
  123. </script>
  124. <style lang="scss">
  125. .infoDetail {
  126. padding: 40rpx;
  127. background-color: #f9f9f9;
  128. .custom-icon-view,
  129. .custom-icon-collected,
  130. .custom-icon-comment {
  131. &::before {
  132. background: -webkit-linear-gradient(left, #f84a1a, #ffa53e);
  133. -webkit-background-clip: text;
  134. -webkit-text-fill-color: transparent;
  135. font-weight: bold;
  136. }
  137. }
  138. .infoTitle {
  139. font-size: 46rpx;
  140. font-weight: 600;
  141. }
  142. .infoTime {
  143. margin: 40rpx 0;
  144. display: flex;
  145. align-items: center;
  146. .viewCount {
  147. display: flex;
  148. align-items: center;
  149. }
  150. .custom-icon-view {
  151. font-size: 36rpx;
  152. margin-right: 10rpx;
  153. }
  154. .time {
  155. margin-left: 20rpx;
  156. color: #aaa;
  157. }
  158. }
  159. .infoContent {
  160. font-size: 32rpx;
  161. }
  162. .bottom {
  163. margin-top: 150rpx;
  164. display: flex;
  165. align-items: center;
  166. width: 100%;
  167. height: 80rpx;
  168. .u-input {
  169. width: 50%;
  170. height: 100%;
  171. }
  172. .count {
  173. width: 32%;
  174. height: 100%;
  175. background-color: #fff;
  176. display: flex;
  177. justify-content: space-between;
  178. align-items: center;
  179. margin: 0 16rpx;
  180. border-radius: 10rpx;
  181. padding: 0 20rpx;
  182. font-size: 20rpx;
  183. .custom-icon {
  184. margin-right: 10rpx;
  185. }
  186. .collect,
  187. .comment {
  188. display: flex;
  189. align-items: center;
  190. }
  191. }
  192. .u-button {
  193. width: 12%;
  194. height: 100%;
  195. .custom-icon-share {
  196. font-size: 20rpx;
  197. }
  198. }
  199. }
  200. }
  201. </style>