導航狀態常用於頁面間的資料傳遞
特別適合單向的數據傳遞(只管數據帶到下一頁,不管帶回上一頁)
使用上直觀且簡單
另外現代瀏覽器多半有緩存機制可以保存各頁面的狀態
即便客戶端進行 Reload, 或點擊上下頁依然可以保存狀態
應用上像是商品目錄頁進到商品內頁
可以藉由導航狀態先將部分資訊帶入內頁渲染
剩餘的資訊再藉由動態請求補齊
可以有效提升使用者體驗
底下以 React Router v6 為例
來說明導航狀態的實際應用:
- useNavigate
導航狀態常用於頁面間的資料傳遞
特別適合單向的數據傳遞(只管數據帶到下一頁,不管帶回上一頁)
使用上直觀且簡單
另外現代瀏覽器多半有緩存機制可以保存各頁面的狀態
即便客戶端進行 Reload, 或點擊上下頁依然可以保存狀態
應用上像是商品目錄頁進到商品內頁
可以藉由導航狀態先將部分資訊帶入內頁渲染
剩餘的資訊再藉由動態請求補齊
可以有效提升使用者體驗
底下以 React Router v6 為例
來說明導航狀態的實際應用:
Nginx 是常見的網頁伺服器
預設的情況下會將客戶端的所有請求轉發到後端的真實路徑
部署多頁式的網頁應用並沒有什麼問題 但是如果是單頁式應用呢
React 是典型的單頁式應用 SPA (Single App Application)
React Router 提供多種類型的路由 如 BrowserRouter, HashRouter, MemoryRouter etc.
其中 React Router 官方最推薦的 Router 就是 BrowserRouter
BrowserRouter 會根據每次路徑的變化都和後端發送請求
但實際上 React 只會有一個 index.html 位於 Nginx 的網站根目錄
此時如果 Nginx 嘗試將每個前端路由的的請求都轉發到後端的真實路徑
就會因為找不到實際的檔案可以回傳 而發生 404 Not Found
底下就來說明如何解決這個問題
網頁應用常見的資源網址除了 http URL 外,
還有 Data URL 及 Blob URL
這兩種類型的網址,也很常用在資源下載及顯示
內文將介紹這兩種 URL 的基本使用方法
重構代碼第二彈!!!
在沒有寫第二彈前…
我ㄧ直在想會不會所有規劃好的系列文 都只有一回…XD
內文