评论刷新问题?

评论刷新问题?

当该景点只有2条评论时,进行刷新评论时出现多次请求,出现4条评论?

https://img1.sycdn.imooc.com/climg/6616515009f5a5c117260659.jpghttps://img1.sycdn.imooc.com/climg/6616515d094c2fad19550958.jpghttps://img1.sycdn.imooc.com/climg/66165189090717e918401114.jpg

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学,你好!尝试粘贴以下代码看能否解决

 getCommentList () {
      const url = SightApis.sightCommentUrl.replace('#{id}', this.id)
      const loadPage = this.refreshing ? 1 : this.currentPage // 判断是否为刷新操作
      ajax.get(url, {
        params: {
          page: loadPage,
        }
      }).then(({ data: { meta, objects } }) => {
        if (this.refreshing) {
          this.commentList = objects // 刷新时,替换评论列表
        } else {
          if (loadPage === 1) {
            this.commentList = objects// 若是第一页,则直接替换当前评论列表
          } else {
            this.commentList = this.commentList.concat(objects) // 将非第一页的评论追加到现有列表中
          }
        }
        // 加载状态结束
        this.loading = false
        // 设置下一页的页码
        this.currentPage = meta.current_page + 1
        // 数据全部加载完成: 当前页面 == 总页数
        if (meta.current_page === meta.page_count) {
          this.finished = true
        }
        this.refreshing = false
      }).catch(() => {
        this.loading = false
        this.error = true
        this.refreshing = false
      })
    }
  },
  mounted () {
    this.id = this.$route.params.id
    // this.getCommentList()
  }
}

祝学习愉快~

  • 慕九州ing 提问者 #1

    为什么每次刷新都会有2次请求呢?

    https://img1.sycdn.imooc.com/climg/66168fe60917862915480853.jpghttps://img1.sycdn.imooc.com/climg/6616902609908c7215310846.jpg

    2024-04-10 21:14:03
  • 好帮手慕小猿 回复 提问者 慕九州ing #2

    同学,你好!可能是刷新过程中,触发了加载,导致发送两次请求。同学可在OnRefresh()方法中设置this.finished=true 就不会加载两次了

    https://img1.sycdn.imooc.com/climg/66178cb10936d2e103420222.jpg

    祝学习愉快~

    2024-04-11 15:10:35
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师