comments.js 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. // pages/comments/comments.js
  2. import commentsApi from '../../api/comments'
  3. const app = getApp()
  4. Page({
  5. /**
  6. * 页面的初始数据
  7. */
  8. data: {
  9. commentsList: [],
  10. shopId: 0,
  11. productId: 0,
  12. commentsType: '',
  13. pageNo: 1,
  14. pageSum: '',
  15. loadingEnd: false,
  16. },
  17. /**
  18. * 生命周期函数--监听页面加载
  19. */
  20. onLoad: async function (options) {
  21. wx.setNavigationBarTitle({
  22. title: options.title
  23. })
  24. if (options.commentstype == 'my') {
  25. await this.getMyCommentsList();
  26. }
  27. if (options.commentstype == 'all') {
  28. var shopId = options.shopId;
  29. var productId = options.productId;
  30. await this.getAllCommentsList(shopId,productId)
  31. }
  32. },
  33. // 获取产品的全部评论
  34. getAllCommentsList: async function (shopId, productId) {
  35. var page = this.data.pageNo;
  36. var comments = await commentsApi.getCommentsByProduct(page, 10, shopId, productId);
  37. //对返回的评论列表进行处理
  38. var commList = this.standardCommentsList(comments.list);
  39. var commentsList = this.data.commentsList;
  40. var list = commentsList.concat(commList)
  41. this.setData({
  42. commentsList: list,
  43. shopId,
  44. productId,
  45. commentsType: 'all',
  46. pageSum: comments.pageCount,
  47. })
  48. },
  49. //获取我的全部评论
  50. getMyCommentsList: async function () {
  51. var page = this.data.pageNo;
  52. var comments = await commentsApi.getPersonComments(page, 10, 1);
  53. var commList = this.standardCommentsList(comments.list);
  54. var commentsList = this.data.commentsList;
  55. var list = commentsList.concat(commList)
  56. this.setData({
  57. commentsList: list,
  58. commentsType: 'my',
  59. commentsNum: comments.count
  60. })
  61. },
  62. standardCommentsList: function (list) {
  63. list.forEach(function (item, i, array) {
  64. let urls = item.imgUrls;
  65. let imgs = urls.split(',');
  66. item.imgs = imgs;
  67. let time = item.createTime.trim().split(" ")[0];
  68. item.commentTime = time
  69. })
  70. return list;
  71. },
  72. /**
  73. * 生命周期函数--监听页面初次渲染完成
  74. */
  75. onReady: function () {
  76. },
  77. /**
  78. * 生命周期函数--监听页面显示
  79. */
  80. onShow: function () {
  81. },
  82. /**
  83. * 生命周期函数--监听页面隐藏
  84. */
  85. onHide: function () {
  86. },
  87. /**
  88. * 生命周期函数--监听页面卸载
  89. */
  90. onUnload: function () {
  91. },
  92. /**
  93. * 页面相关事件处理函数--监听用户下拉动作
  94. */
  95. onPullDownRefresh: function () {
  96. },
  97. /**
  98. * 页面上拉触底事件的处理函数
  99. */
  100. onReachBottom: function () {
  101. var self = this;
  102. var commentsType = this.data.commentsType;
  103. var pageNo = this.data.pageNo;
  104. pageNo += 1;
  105. this.setData({
  106. pageNo
  107. })
  108. if (commentsType == 'my') {
  109. if(self.data.pageNo <= self.data.pageSum){
  110. this.getMyCommentsList()
  111. return
  112. }
  113. self.setData({
  114. loadingEnd: true
  115. })
  116. }
  117. if(commentsType=='all'){
  118. var shopId = self.data.shopId;
  119. var productId = self.data.productId;
  120. if(self.data.pageNo <= self.data.pageSum){
  121. this.getAllCommentsList(shopId,productId)
  122. return
  123. }
  124. self.setData({
  125. loadingEnd: true
  126. })
  127. }
  128. },
  129. /**
  130. * 用户点击右上角分享
  131. */
  132. onShareAppMessage: function () {
  133. }
  134. })