goods-evaluate.wxml 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <!--module/order/pages/evaluate/evaluate.wxml 评价页-->
  2. <t-navbar wx:if="{{!videoFullscreen}}" title="评价" left-arrow />
  3. <scroll-view class="page-scroll__container" type="list" scroll-y style="{{containerStyle}}">
  4. <view class="evaluate-container">
  5. <!-- 商品信息 -->
  6. <view class="product-card" wx:if="{{product.name}}">
  7. <image class="product-img" src="{{product.image}}" mode="aspectFill" />
  8. <view class="product-info">
  9. <text class="product-name">{{product.name}}</text>
  10. <text class="product-spec" wx:if="{{product.spec}}">{{product.spec}}</text>
  11. </view>
  12. </view>
  13. <!-- 描述相符 评分(半星) -->
  14. <view class="rate-row">
  15. <text class="rate-label">描述相符</text>
  16. <view class="rate-wrap">
  17. <t-rate
  18. value="{{score}}"
  19. count="{{5}}"
  20. color="{{rateColor}}"
  21. show-text="{{false}}"
  22. placement=""
  23. bind:change="onScoreChange"
  24. />
  25. <text class="rate-score">{{score || '0'}}分</text>
  26. </view>
  27. </view>
  28. <!-- 评价输入 -->
  29. <view class="comment-section">
  30. <textarea
  31. class="comment-input"
  32. placeholder="展开说说对商品的想法吧"
  33. placeholder-class="comment-placeholder"
  34. value="{{content}}"
  35. bindinput="onContentInput"
  36. maxlength="{{500}}"
  37. show-confirm-bar="{{false}}"
  38. />
  39. <view class="comment-count" wx:if="{{content.length > 0}}">{{content.length}}/500</view>
  40. </view>
  41. <!-- 图/视频 上传(图片+视频总数不超过9个,添加按钮在最后,一行4个) -->
  42. <view class="upload-section">
  43. <view class="media-grid">
  44. <view class="media-item" wx:for="{{mediaList}}" wx:key="path">
  45. <image wx:if="{{item.type === 'image'}}" class="media-thumb" src="{{item.path}}" mode="aspectFill" bindtap="onPreviewImage" data-url="{{item.path}}" />
  46. <view wx:else class="media-item-video" bindtap="onPreviewVideo" data-index="{{index}}">
  47. <video id="goods-video-{{index}}" class="media-thumb" src="{{item.path}}" show-center-play-btn="{{true}}" object-fit="cover" controls="{{true}}" bindfullscreenchange="onVideoFullscreenChange" />
  48. <view class="media-item-play"><t-icon name="play-circle-filled" size="56rpx" color="rgba(255,255,255,0.95)" /></view>
  49. </view>
  50. <view class="media-delete" catchtap="onRemoveMedia" data-index="{{index}}">
  51. <t-icon name="close" size="32rpx" color="#fff" />
  52. </view>
  53. </view>
  54. <view class="upload-trigger" wx:if="{{mediaList.length < 9}}" bindtap="onChooseMedia">
  55. <t-icon name="add" size="48rpx" color="#999" />
  56. <text class="upload-label">图/视频</text>
  57. </view>
  58. </view>
  59. </view>
  60. </view>
  61. </scroll-view>
  62. <!-- 发布按钮(视频全屏时隐藏,避免遮挡进度条) -->
  63. <view class="publish-footer" wx:if="{{!videoFullscreen}}" style="padding-bottom: {{container.safeBottomOffset}}px;">
  64. <view class="publish-btn {{canPublish ? '' : 'disabled'}}" bindtap="onPublish">发布</view>
  65. </view>