loadMorePage执行的时候,如何更新currentPage的?

来源:13-14 重构 useLoadMore

背包独行客

2024-01-09

在Home view执行loadMorePage的时候,如何更新currentPage的值?没看到呢,请赐教谢谢,我这里不更新currentPage的值呢

更新 逻辑是这里吗?

return {
      ...restOptions,
      currentPage: currentPage.value + 1,
      pageSize
    }
写回答

1回答

张轩

2024-01-10

同学你好

这个值的更新是在 store 中完成的。

// home 中的取值
const currentPage = computed(() => columnStore.currentPage)
// 然后从这里传进去的
const { loadMorePage, isLastPage } = useLoadMore(columnStore, 'fetchColumns', { total, currentPage, pageSize: 3 })

// store/column.ts 在这里更新的
    async fetchColumns(params: ListReqType = {}) {
      const { currentPage = 1, pageSize = 6 } = params
      if (this.currentPage < currentPage) {
        const { data } = await axios.get<ListResType<ColumnProps>>(`/columns?currentPage=${currentPage}&pageSize=${pageSize}`)
        const { count, list } = data.data
        this.$patch({
          currentPage,
          total: count,
          data: { ...this.data, ...arrToObj(list) }
        })
      }
    },


0
0

Vue3 + TS 仿知乎专栏企业级项目

带你完成前后端分离复杂项目,率先掌握 vue3 造轮子技能

3142 学习 · 2313 问题

查看课程