Vue.js是一個構建交互式的、可重用的和可組裝的Web用戶界面的漸進式框架。它被設計為盡可能的靈活和高效,使它能夠在應用程序中快速迭代處理。在Vue.js中,路由是最重要的概念之一。Vue Router是官方提供的插件,它可以將Vue.js與一系列路由組件進行交互,可以通過管理URL和渲染組件的實現來允許單頁面應用程序(SPA)。
import Vue from "vue";
import VueRouter from "vue-router";
import Home from "./components/Home";
import About from "./components/About";
import Contact from "./components/Contact";
Vue.use(VueRouter);
const routes = [
{
path: "/home",
name: "Home",
component: Home,
},
{
path: "/about",
name: "About",
component: About,
},
{
path: "/contact",
name: "Contact",
component: Contact,
},
];
const router = new VueRouter({
mode: "history",
routes,
});
export default router;
在Vue Router中,有兩種不同類型的路由:Hash模式和History模式。Hash模式使用URL中的散列(#)字符來實現路由,而History模式使用HTML5歷史記錄API來實現路由。
當使用History模式時,Vue Router更改HTML5歷史記錄,并使用瀏覽器的popstate事件來通知路由。這使得Vue Router可以輕松地管理路由歷史記錄,為您的單頁面應用程序提供優雅的URL。
在使用Vue Router時,需要考慮對于History模式的兼容性問題。因為在一些舊的瀏覽器例如IE中,History模式不會正常的工作。為了解決這個問題,Vue Router提供了fallback選項,如果路由無法找到,則路由將返回到這個頁面。fallback選項的值可以是任何組件,一般選擇一個特殊的404頁面組件。