关于ColumnDetail 改造post数据的一些疑问
来源:11-10 useLoadMore 支持数据缓存 解决方案分析

慕侠6050286
2023-09-14
老师 我是这样取的columnId,currentId应该有route的内置定义:string | string[] ,
我只能通过如下2种方式去解决const currentId = route.params.id as string
const { loadMorePage, isLastPage } = useLoadMore('fetchPosts', total, { currentPage: currentPage.value ? currentPage.value + 1 : 1, pageSize: 2, id: currentId.toString(), })
但是查看老师的代码是这样写的:
我有点不大明白为什么需要ref一下currentId呢
希望得到老师的解惑 万分感谢!
写回答
1回答
-
同学你好
这里用响应式是为了一个特殊的情况存在的,也是为了修复之前的一个 bug。
我相信图中的代码也说明了一些情况。
这种场景是:假如当前在一个特定的专栏,然后在右上角的下拉菜单点击我的专栏的时候,页面并不会有任何反应,因为只是 columnID 变化了,路由没有任何变化,所以页面会没有反应。
这里这段逻辑就是为了当发现ID 发生变化的时候,整个页面会重新发送对应的数据,故而使用了 ref。
012023-09-15
相似问题