vue.js - Vue:记住最后一页的状态
问题描述
我有一个 Vue 应用程序,其中一些页面在显示页面的列表下有一个分页组件。
+------------------+ +------------------+ +------------------+
| Item 1 page 3 | | | | Item 1 page 3 |
+------------------+ | Details item 2 | +------------------+
| Item 2 page 3 | - click -> | | +--> | Item 2 page 3 |
+------------------+ | page 3 | | +------------------+
| Item 3 page 3 | | | | | Item 3 page 3 |
+------------------+ +------------------+ | +------------------+
_____ |
< 1 2 3 ... 10 > |Back | -------- click < 1 2 3 ... 10 >
^ ^
用户可以点击其中一个页面(1, 2, 3, ...),当页面呈现给用户时,它可以点击页面的一个项目并访问该项目的详细信息。当用户从详细信息返回到分页组件时,我想记住他正在访问的分页页面。(在其他情况下我实际上需要这个,但分页更容易解释)。
我现在做的是有两个 cookie:lastPage 和 detailsSelected。lastPage 在用户选择页面时设置(默认为 1),而 detailsSelected 在选择详细信息时设置为 true。当我创建包含分页的页面时,我会检查这些 cookie:
data() {
return {
p : 1,
}
},
mounted() {
if (this.detailsVisited && this.lastPage) {
this.p = this.lastPage
this.unsetExerciseDetailsVisited()
}
}
所以,如果我们是从细节来的,那么我们将 currentPage 设置为 lastPage,否则它会得到默认的第 1 页。
老实说,我不喜欢这样。我正在考虑创建一个堆栈组件以供需要具有状态的页面使用,但我想知道是否已经有更简单的解决方案。
谢谢
解决方案
推荐阅读
- apache-kafka - 是否有任何 api 或工具可以获取 kafka 主题中的摄取率
- clojure - 为什么我的端点没有在 Clojure 中使用 ring 传递标头/cookie 并按预期响应?
- f# - 如何修复 Giraffe API 返回的空对象通过 SqlDataProvider 从数据库中获取
- hadoop - 为什么我的 hadoop 无法理解 -chmod 命令?
- php - 在 Wordpress 中找不到 style.css
- android - 如何断开WiFi并连接到SSID和密码可用的wifi?
- linux - linux中数百万文件的重命名和更改目录结构
- sql-server - 如果它满足 CASE 中的条件,有没有办法从另一个表中选择一个名称
- botframework - 无法添加使用 AppStudio 构建的自定义团队选项卡
- javascript - 错误:`createNavigationContainer()` 已被删除。改用`createAppContainer()`