是的,這個篇幅會用來聊一下生命週期當中,比較奇怪的事情。薛丁格
[https://zh.wikipedia.org/wiki/%E8%96%9B%E5%AE%9A%E8%B0%94%E7%8C%AB]
我就不解釋了,程式執行其實並沒有像是量子力學的那種疊加狀態,只是,當 Vue 的元件趨於複雜,再搭配上 Vue Router
的時候,你的某些生命週期中的勾子,就會有你所不知道的狀態。
我在先前的篇幅當中,有提到生命週期與路由的關係。我們這一個篇章,就將路由與生命週期之間的事情,做一個全面性的剖析。如果你之前有稍稍稍稍微留意我的部落格,應該會看過我曾經碎念過
Router 與生命週期之間的事情。
> 重新檢視 lifecycle 與 vue-router
[https://blog.hinablue.me/vuejs-zhong-xin-jian-shi-lifecycle-yu-vue-router/]
關於 vue-router 外面的兩三事
[https://blog.hinablue.me/vuejs-guan-yu-vue-router-wai-mian-de-liang-san-shi/]
VueJS 快速入門 Day 1 [https://blog.hinablue.
聊完了基礎的路由功能後,我們接著來看看關於路由的進階應用方式。你放心,前陣子一直提到的動態元件載入,這邊一樣會出現,所以先給各位打個預防針。不過,如果你真的看膩了什麼動態載入的事情,那麼你想要跳過我也是欣然接受。
何況,進來就進來,出去就出去, 哪有人一直動態載入的啦。
--------------------------------------------------------------------------------
路由守衛方法( Guards Methods )
> Navigation Guards
[https://router.vuejs.org/guide/advanced/navigation-guards.html]
在 Router 當中提供了幾種所謂的路由守衛方法:
其實我覺得叫路由防衛比較好(聽起來超中二的)
* beforeEach
聊完狀態管理之後,我們來聊一下前端的路由。最近各大家前端工具都有支援前端路由的功能。而 Vue-Router
是官方推出的。功能上都大同小異,你也可以自己做一個(我最喜歡自己做輪子了)。
如果你做好了記得開源出來~
--------------------------------------------------------------------------------
前端路由
前端做這件事情應該是 Angular 起了一個頭,畢竟身為 Google 的親生兒子,所以很熱門。其實他並不是什麼很新穎的技術,主要是依靠 HTML5
History API [https://developer.mozilla.org/zh-TW/docs/Web/API/History_