iT邦幫忙

2021 iThome 鐵人賽

DAY 21
0
Modern Web

30 天我與 Vue 的那些二三事系列 第 21

Day 21 - Vue Router基本概念(1)

  • 分享至 

  • xImage
  •  

如同我們前面幾天提到的,Vue的核心是用來處理狀態、版面、以及元件的邏輯。 但是當整個網站逐漸發展成為應用程式的時候,Vue的元件或是切換頁面若要使用原本我們所熟悉的 v-if、v-else,就會讓整體的程式邏輯變得複雜且不易維護。

我們今天要介紹的 Vue Router ,作為 Vue 框架生態圈的一部分,彌補了 Vue.js 核心薄弱的部分, 除了前面提到控制元件的切換邏輯之外,還能搭配前端路由機制來操作瀏覽器上/下一頁的流程, 這使得 Vue.js 也有了能夠建立 SPA 完整單頁式應用的能力。

不過基本上框架都具備處理Router的能力,像是Grant有用過PHP的Laravel框架、node.js的Express框架及Python的dijango,基本上路由的處理都是大同小異。

而至於甚麼是路由,基本上可以用大家常用的FB來舉例,例如,當我點到個人檔案的page時頁面顯示為:

facebook/profile?xxxx
https://ithelp.ithome.com.tw/upload/images/20211006/20128925IuIaSHIvhs.png

而連到Facebook watch又變成
facebook/watch/xxx
https://ithelp.ithome.com.tw/upload/images/20211006/20128925pDssb0AM1H.png

像這樣,瀏覽器透過不同的網址,向後端的網頁伺服器發送請求 (Request),而伺服器接收到瀏覽器的請求後, 回應對應的內容給瀏覽器來渲染,這樣的機制我們就稱為網站路由 (Routing) ,管理網站路由的程式通常會被稱作 Router。

https://ithelp.ithome.com.tw/upload/images/20211006/20128925rPw7y2uZqp.png

vue-router就像是一個中層,會負責消化傳遞來的Request,並決定要傳遞請求到哪個頁面(html或是.vue樣板)。


Hi, I am Grant.

個人部落格 - https://grantliblog.wordpress.com/
個人網站 - https://grantli-website.netlify.app/#/mainpage
我的寫作專題 - https://vocus.cc/user/5af2e9b5fd89780001822db4#


上一篇
Day 20 - 規劃各功能模組的介面
下一篇
Day 22 - Vue Router基本概念(2)
系列文
30 天我與 Vue 的那些二三事30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言