瑶都万能墙
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.

265 lines
4.7 KiB

7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
  1. <template>
  2. <view class="works" @click="$emit('click')">
  3. <view class="box"
  4. :style="{'--sexcolor' : sex[item.sex].color}">
  5. <view class="headPortraitimg">
  6. <image :src="item.userImage"
  7. @click.stop="previewImage([item.userImage])"
  8. mode="aspectFill"></image>
  9. </view>
  10. <view class="YaoduUniversalWall">
  11. <view class="heide">
  12. <view class="username text-ellipsis">
  13. {{ item.userName }}
  14. </view>
  15. <view class="inde"
  16. v-if="item.sex">
  17. <!-- 性别 -->
  18. {{ item.sex }}
  19. </view>
  20. <view class="inde"
  21. v-if="item.yearDate">
  22. <!-- 年份 -->
  23. {{ item.yearDate }}
  24. </view>
  25. <view class="inde"
  26. v-if="item.addId">
  27. <!-- 地址 -->
  28. {{ item.addId }}
  29. </view>
  30. <view class="authentication"
  31. v-if="item.isContent">
  32. <!-- 个人认证 -->
  33. {{ item.isContent }}
  34. </view>
  35. </view>
  36. <view class="Times">
  37. <view class="TimeMonth">
  38. <!-- 10-08 -->
  39. {{ item.createTime }}发布
  40. </view>
  41. <!-- <view class="Month">
  42. 12:34
  43. </view> -->
  44. </view>
  45. </view>
  46. </view>
  47. <view class="dynamics" v-html="$utils.stringFormatHtml(item.title)">
  48. </view>
  49. <view class="address"
  50. v-if="item.address">
  51. <uv-icon size="30rpx" name="map"></uv-icon>
  52. <view class="text-ellipsis">
  53. {{ item.address }}
  54. </view>
  55. </view>
  56. <view class="Artworkimages">
  57. <view class="wrokimg"
  58. @click.stop="previewImage(images, i)"
  59. :key="i" v-for="(img, i) in images">
  60. <image :src="img" mode="aspectFill"></image>
  61. </view>
  62. </view>
  63. <view class="bottom">
  64. <view class="browse">
  65. {{ item.isBrowse }}浏览
  66. </view>
  67. <view class="browse">
  68. {{ item.isComment }}条评论
  69. </view>
  70. <view class="phone"
  71. v-if="item.phone"
  72. @click.stop="callPhone">
  73. <image src="/static/image/home/phone.png" mode=""></image>
  74. 联系{{ ta[item.sex] }}
  75. </view>
  76. </view>
  77. </view>
  78. </template>
  79. <script>
  80. import mixinsSex from '@/mixins/sex.js'
  81. export default {
  82. mixins: [mixinsSex],
  83. props: {
  84. item: {},
  85. },
  86. data() {
  87. return {
  88. }
  89. },
  90. computed : {
  91. images(){
  92. if(!this.item.image){
  93. return []
  94. }
  95. return this.item.image.split(',')
  96. }
  97. },
  98. methods: {
  99. callPhone(){
  100. uni.makePhoneCall({
  101. phoneNumber: this.item.phone,
  102. success() {
  103. console.log('安卓拨打成功');
  104. },
  105. fail() {
  106. console.log('安卓拨打失败');
  107. }
  108. })
  109. },
  110. },
  111. }
  112. </script>
  113. <style scoped lang="scss">
  114. .works {
  115. margin: 40rpx 20rpx;
  116. background-color: #fff;
  117. padding: 40rpx;
  118. border-radius: 20rpx;
  119. box-shadow: 0 0 6rpx 6rpx #00000011;
  120. .box {
  121. display: flex;
  122. align-items: center;
  123. .headPortraitimg {
  124. width: 100rpx;
  125. height: 100rpx;
  126. border-radius: 15rpx;
  127. overflow: hidden;
  128. image{
  129. width: 100%;
  130. height: 100%;
  131. }
  132. }
  133. .YaoduUniversalWall {
  134. padding: 0rpx 10rpx;
  135. .username {
  136. max-width: 200rpx;
  137. }
  138. .heide {
  139. display: flex;
  140. justify-content: center;
  141. align-items: center;
  142. }
  143. .inde {
  144. display: flex;
  145. justify-content: center;
  146. align-items: center;
  147. padding: 0rpx 10rpx;
  148. margin: 0rpx 5rpx;
  149. font-size: 20rpx;
  150. height: 30rpx;
  151. color: white;
  152. // background-color: rgb(124, 136, 242);
  153. background-color: var(--sexcolor);
  154. border-radius: 7rpx;
  155. flex-shrink: 0;
  156. }
  157. .authentication {
  158. display: flex;
  159. justify-content: center;
  160. align-items: center;
  161. padding: 0rpx 10rpx;
  162. margin: 0rpx 5rpx;
  163. font-size: 20rpx;
  164. height: 34rpx;
  165. padding: 0rpx 10rpx;
  166. color: white;
  167. background-color: #ffd036;
  168. border-radius: 7rpx;
  169. flex-shrink: 0;
  170. }
  171. .Times {
  172. display: flex;
  173. padding: 5rpx 0rpx;
  174. font-size: 20rpx;
  175. margin-top: 10rpx;
  176. .Month {
  177. margin: 0rpx 15rpx;
  178. }
  179. }
  180. }
  181. }
  182. .personalInformation {
  183. display: flex;
  184. .inde {
  185. font-size: 25rpx;
  186. padding: 0rpx 8rpx;
  187. }
  188. .authentication {
  189. font-size: 25rpx;
  190. }
  191. }
  192. .dynamics {
  193. margin-top: 20rpx;
  194. font-size: 28rpx;
  195. // font-weight: bold;
  196. // line-height: 35rpx;
  197. letter-spacing: 3rpx;
  198. }
  199. .address{
  200. font-size: 24rpx;
  201. margin-top: 20rpx;
  202. display: flex;
  203. align-items: center;
  204. }
  205. .Artworkimages {
  206. display: flex;
  207. flex-wrap: wrap;
  208. .wrokimg {
  209. margin: 10rpx;
  210. image {
  211. height: 190rpx;
  212. width: 190rpx;
  213. border-radius: 20rpx;
  214. }
  215. }
  216. }
  217. .bottom {
  218. display: flex;
  219. margin-top: 20rpx;
  220. font-size: 24rpx;
  221. .browse {
  222. margin: 0rpx 30rpx;
  223. color: rgb(132, 132, 132);
  224. }
  225. .phone{
  226. background-color: rgba($uni-color, 0.2);
  227. color: $uni-color;
  228. padding: 8rpx 16rpx;
  229. border-radius: 10rpx;
  230. margin-left: auto;
  231. image{
  232. width: 20rpx;
  233. height: 20rpx;
  234. }
  235. }
  236. }
  237. }
  238. </style>