feedback-reply.vue 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <template>
  2. <ax-body>
  3. <view class="page-background">
  4. <image src="@/static/img/my-bg.svg" mode="widthFix"></image>
  5. </view>
  6. <view class="body app-hide-scrollbar root">
  7. <view v-if="list.data.length" class="list">
  8. <view v-for="(item, index) in list.data" :key="index" class="item">
  9. <view class="mask"></view>
  10. <view class="mask-box">
  11. <view>{{ item.createTime }}</view>
  12. <view>{{ typesLable(item.type) }}</view>
  13. </view>
  14. <view class="card">
  15. <view>
  16. <text>{{ item.description }}</text>
  17. <text v-if="item.images" @click="previewImage(item.images.split(','))"
  18. class="item-pic">查看附件</text>
  19. </view>
  20. <view v-if="item.reply" class="reply">
  21. <text class="start-label">答复:</text>
  22. <text>{{ item.reply }}</text>
  23. </view>
  24. </view>
  25. </view>
  26. </view>
  27. <view v-else class="nothing-wrap">
  28. <view class="ax ax-iconblock i-kongshuju icon"></view>
  29. <view>暂无数据</view>
  30. </view>
  31. </view>
  32. </ax-body>
  33. </template>
  34. <script>
  35. export default {
  36. data() {
  37. return {
  38. list: {
  39. data: [],
  40. total: 10
  41. },
  42. types: [{ name: '投诉吐槽', value: 1 }, { name: '功能异常', value: 2 }, { name: '体验问题', value: 3 }, { name: '功能建议', value: 4 }, { name: '其他', value: 9 }]
  43. }
  44. },
  45. onShow() {
  46. this.loadListData();
  47. },
  48. methods: {
  49. loadListData() {
  50. this.$api.base("get", "/applet/v1/user/myFeedback", {}, {}).then(res => {
  51. this.list.data = res.data
  52. console.log(this.list.data);
  53. })
  54. },
  55. typesLable(val) {
  56. if (!this.types.length) return '';
  57. var item = this.types.find(i => i.value == val);
  58. return item.name || '';
  59. },
  60. previewImage(url) {
  61. if (!url) return;
  62. console.log(this.$config.url.request)
  63. var newUrl = new Array()
  64. url.forEach(i => {
  65. newUrl.push(this.$config.url.request + i)
  66. })
  67. console.log(newUrl)
  68. uni.previewImage({ urls: newUrl, indicator: 'none' });
  69. },
  70. }
  71. }
  72. </script>
  73. <style>
  74. /* @import url("../../components/ax/ax.css"); */
  75. @import url("feedback-reply.css");
  76. </style>