簡體   English   中英

使用html5歷史記錄API和Vue

[英]Working with html5 history API and Vue

我面臨一個愚蠢的問題。 在Web應用程序中(我的堆棧是vue + vuex + vue-router),我完全無法將我的商店狀態與用戶正在查看的頁面同步。

當用戶觸發后退或前進按鈕時,它將觸發同一onpopstate事件,該事件絕對不提供有關“方向”或頁數的信息。 只有狀態對象中的數組key似乎幾乎無法工作(在移到新位置然后猜測用戶進入流行狀態時將其保存),但我什至不知道“鍵”對應的“門”在哪里。

因此,從那里開始,我想到了手動跟蹤歷史記錄狀態鍵並猜測用戶去過的地方,但是我想它不會交叉兼容,而且代碼繁重。

這是我的問題:我是否缺少html5 API中的一些關鍵元素,我該怎么做(並保持代碼/邏輯最低限度)?

先感謝您!

編輯:重命名標題並添加信息

EDIT2:vuex-router-sync是不合適的,因為它僅在vuex一側提供路由信息,並且沒有真正同步路由器狀態和存儲狀態...太差了

PS:請不要使用c / p定義,請仔細閱讀,以為

onpopstateevent.state提供狀態對象,該狀態對象與應用程序歷史中的各個位置相關。

編寫應用程序,以便提供此狀態對象涵蓋應用程序的整個狀態,而不管時間如何。 我建議您閱讀有關狀態模式的知識 ,並了解“狀態”的含義,例如

在特定時間某人或某物所處的特定條件。

我的意思是,您不需要知道應用程序所在的歷史記錄中的相對位置,因為event.state應該是您應用程序所需的全部內容,以確定要呈現的內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM