58 Vue Router

58 Vue Router

安装

新建项目

如果是新建项目,可以在 Vue CLI 搭建 时选中 Router

选择特性

? Check the features needed for your project: (Press <space> to select, <a> to toggle all, <i> to invert selection)
>(*) Choose Vue version
 (*) Babel # 这是一个 JS 转译的工具
 ( ) TypeScript
 ( ) Progressive Web App (PWA) Support
 (*) Router
 ( ) Vuex
 (*) CSS Pre-processors # CSS 预处理器,如 sass、less
 (*) Linter / Formatter # 保障代码规范的工具,如 ESLint
 ( ) Unit Testing
 ( ) E2E Testing

选择模式

? Use history mode for router? (Requires proper server setup for index fallback in production) (Y/n) y

选择 history 模式,还有一种是 hash 模式

其他的操作与 搭建 Vue CLI 一致

新增路由

如果是在已有项目中新增 Vue Router

NPM

$ npm install vue-router

文件配置

在原项目中新增路由还需要手写框架

index.js

在 src 目录下创建 router 文件夹,在 router 文件夹下创建 index.js 文件,通过 Vue.use() 明确地安装路由功能

import Vue from 'vue'
import VueRouter from 'vue-router'

Vue.use(VueRouter)
import Home from '../views/Home.vue'
import About from '../views/About.vue'

const routes = {
    path: '/',
    name : 'Home',
    component: Home,
    // redirect: '/About' 可以使打开页面时默认跳转到 About 对应的页面
}{
    path: '/about',
    name: 'About',
    component: About,
        
const router = new VueRouter({
  mode: 'history', // 选择的 history 模式,还有一种模式是 hash
  base: process.env.BASE_URL,
  routes
})

export default router

main.js

在 main.js 引入模块

import router from './router'

在实例化 Vue 新增 router

new Vue({
  router,
  render: h => h(App)
}).$mount('#app')

App.vue

<template>
    <div id="nav">
      <router-link to="/">Home</router-link> |
      <router-link to="/about">About</router-link>
    </div>
    <router-view/>
  </div>
</template>

router-view 标签用于占位,有 name 属性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值