帧视界壹通告,付费看视频的微信小程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

206 lines
3.5 KiB

1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
  1. <template>
  2. <view class="postDetail">
  3. <navbar leftClick @leftClick="leftClick" />
  4. <view class="swipe">
  5. <uv-swiper
  6. :list="item.image &&
  7. item.image.split(',')"
  8. indicator
  9. height="320rpx"></uv-swiper>
  10. </view>
  11. <view class="box">
  12. <view class="topInfo">
  13. <view class="title">
  14. {{ item.name }}
  15. </view>
  16. <view class="price">
  17. {{ item.money }}
  18. </view>
  19. <view class="right">
  20. <view class="money30">
  21. 近30天收益
  22. </view>
  23. <view class="phone">
  24. 联系方式<text>付费查看</text>
  25. </view>
  26. </view>
  27. </view>
  28. <view class="createBy">
  29. <view class="">
  30. 发布人{{ item.userId }}
  31. </view>
  32. <view class="">
  33. 发布时间{{ item.createTime }}
  34. </view>
  35. </view>
  36. <view class="controls">
  37. <contentControls/>
  38. </view>
  39. <view class="content">
  40. <uv-parse :content="item.photographerContent"></uv-parse>
  41. </view>
  42. <view class="works">
  43. <view class="item"
  44. v-for="(t, index) in item.isImage && item.isImage.split(',')"
  45. :key="index">
  46. <view class="item-image">
  47. <!-- <v :src="t" mode=""></v> -->
  48. <video src="t">
  49. </view>
  50. </view>
  51. </view>
  52. </view>
  53. </view>
  54. </template>
  55. <script>
  56. import contentControls from '@/components/content/contentControls.vue'
  57. export default {
  58. components : {
  59. contentControls
  60. },
  61. data() {
  62. return {
  63. item: {},
  64. list : [],
  65. queryParams: {
  66. pageNo: 1,
  67. pageSize: 10
  68. },
  69. total : 0,
  70. }
  71. },
  72. onLoad(options) {
  73. // this.$route.query的参数
  74. this.getData(options.id)
  75. // this.getList()
  76. },
  77. //滚动到屏幕底部
  78. onReachBottom() {
  79. // if(this.queryParams.pageSize < this.total){
  80. // this.queryParams.pageSize += 10
  81. // this.getList()
  82. // }
  83. },
  84. methods: {
  85. leftClick(){
  86. uni.navigateBack(-1)
  87. },
  88. getData(id){
  89. this.$api('indexGetActorDetail', {
  90. id
  91. }, res => {
  92. if(res.code == 200){
  93. this.item = res.result
  94. }
  95. })
  96. },
  97. getList(){
  98. this.$api('indexGetGetWorkPage', {
  99. token : uni.getStorageSync('token'),
  100. ...this.queryParams
  101. }, res => {
  102. if(res.code == 200){
  103. this.list = res.result.records
  104. this.total = res.result.total
  105. }
  106. })
  107. }
  108. }
  109. }
  110. </script>
  111. <style lang="scss" scoped>
  112. .postDetail {
  113. .box {
  114. padding: 20rpx;
  115. .topInfo{
  116. position: relative;
  117. .price{
  118. font-size: 34rpx;
  119. font-weight: 900;
  120. margin: 10rpx 0;
  121. }
  122. .right{
  123. position: absolute;
  124. right: 20rpx;
  125. top: 0rpx;
  126. line-height: 50rpx;
  127. text-align: right;
  128. .money30{
  129. font-size: 26rpx;
  130. color: #D43030;
  131. }
  132. .phone{
  133. text{
  134. color: #3A6BF1;
  135. margin-left: 10rpx;
  136. }
  137. }
  138. }
  139. }
  140. .title {
  141. font-size: 30rpx;
  142. font-weight: 600;
  143. color: #000;
  144. }
  145. .createBy {
  146. display: flex;
  147. margin-top: auto;
  148. margin-bottom: 10rpx;
  149. font-size: 24rpx;
  150. margin-top: 20rpx;
  151. color: #555;
  152. &>view {
  153. display: flex;
  154. align-items: center;
  155. justify-content: center;
  156. padding-right: 20rpx;
  157. }
  158. }
  159. .controls {
  160. margin-top: 30rpx;
  161. }
  162. .content {
  163. margin-top: 30rpx;
  164. color: #777;
  165. }
  166. .works{
  167. display: flex;
  168. flex-wrap: wrap;
  169. margin-top: 20rpx;
  170. .item{
  171. width: 320rpx;
  172. margin: 15rpx;
  173. .item-title{
  174. padding-bottom: 10rpx;
  175. color: #000;
  176. }
  177. .item-image{
  178. background-color: #999;
  179. width: 100%;
  180. height: 250rpx;
  181. video{
  182. width: 100%;
  183. height: 100%;
  184. }
  185. }
  186. }
  187. }
  188. }
  189. }
  190. </style>