Vue學習-VueRouter路由基礎

一、VueRouter

1、說明

用 Vue.js + Vue Router 創建單頁應用,感覺很自然:使用 Vue.js ,我們已經可以通過組合組件來組成應用程序,當你要把 Vue Router 添加進來,我們需要做的是,將組件 (components) 映射到路由 (routes),然後告訴 Vue Router 在哪裡渲染它們。路由本質上就是超鏈接。

2、選中路由的渲染:

(1)、router-link-exact-active類

當路由到哪裡時,該類名就添加到對應的路由標簽上。
比如:當點擊About時,路由就跳轉到About對應的頁面

(2)、router-link-active類

路由中,子路由的path設置(比如:http://localhost/home)包含瞭父路由的path設置(比如:http://localhost/),那麼點擊子路由的時候,給子路由添加router-link-active類時,父路由也有router-link-active類。也就是當點擊(http://localhost/home)路由後,兩個路由都有被選中的效果。

3、基本工作原理

在這裡插入圖片描述

vue中的html部分引入router-link(與a原理類似),to屬性就是要跳轉的vue組件,而router-view就負責展現當前路由所指向的內容,使得單頁面也能達到頁面跳轉的效果!

二、實戰

1、創建一個帶router的vue項目

在這裡插入圖片描述

2、打開項目中的src/router/index.js文件

可以看到項目已經自動生成瞭兩個路由,一個是主頁home,一個是about界面。路徑分別為 '/' '/about'

在這裡插入圖片描述

打開根目錄的main.js,可以看到在main.js引入瞭路由,所以在所有組件中都可以使用路由瞭。

在這裡插入圖片描述

3、在瀏覽器中打開項目

可以看到HomeAbout兩個路由導航。

在這裡插入圖片描述

4、新建路由

寫一個類似淘寶的路由導航,包括:主頁、消息、購物車和我的四部分。

新建四個vue文件,對應四個路由。

在這裡插入圖片描述

配置路由index.js文件

import Vue from 'vue'
import VueRouter from 'vue-router'
import Home from '../views/Home.vue'

Vue.use(VueRouter)

const routes = [
  {
    path: '/',
    name: 'Home',
    component: Home
  },
  {
    path: '/message',
    name: 'Message',
    component: () => import(/* webpackChunkName: "about" */ '../views/Message.vue')
  },
  {
    path: '/goodcar',
    name: 'GoodCar',
    component: () => import(/* webpackChunkName: "about" */ '../views/GoodCar.vue')
  },
  {
    path: '/me',
    name: 'Me',
    component: () => import(/* webpackChunkName: "about" */ '../views/Me.vue')
  }
]

const router = new VueRouter({
  routes
})

export default router

在App.vue中配置導航欄

<template>
  <div id="app">
    <div id="nav">
      <router-link to="/">主頁</router-link>
      <router-link to="/message">消息</router-link>
      <router-link to="/goodcar">購物車</router-link>
      <router-link to="/me">我的</router-link>
    </div>
    <router-view/>
  </div>
</template>

<style>
#app {
  font-family: Avenir, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
}

#nav {
  padding: 30px;
  margin: 0 auto;
  width: 30%;
  display: flex;
  justify-content: space-around;
}

#nav a {
  font-weight: bold;
  color: #2c3e50;
  text-decoration: none;
}

#nav a.router-link-exact-active {
  color: #42b983;
}
</style>

結果:

在這裡插入圖片描述

這樣我們就瞭解瞭路由的基本概念及其配置以及它的功能。

到此這篇關於Vue學習-VueRouter路由基礎的文章就介紹到這瞭,更多相關VueRouter路由基礎內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: