当前位置: 首页 > news >正文

【Vue Router 3】入门

简介

Vue Router让SPA(Single-page Application)的构建更加容易。

Vue Router的功能:

  • 嵌套的路由/视图映射
  • 模块化的、基于组件的router配置
  • route params, query, wildcards
  • 由Vue过渡系统支持的视图过渡效果
  • 细粒度(fine-grained)的导航控制
  • 自动的激活CSS类的链接
  • HTML5 hash模式或history模式
  • 可自定义的滚动行为

安装

使用CDN直接引入

从https://unpkg.com/vue-router@3/dist/vue-router.js下载文件。在Vue加载后加载Vue Router会自动安装它到Vue。

<script src="/path/to/vue.js"></script>
<script src="/path/to/vue-router.js"></script>

npm

在模块化系统中,先使用npm安装vue-router,

npm install vue-router

如果不使用全局的script的标签引入vue和vue router,那么可以使用Vue.use来安装vue router,

import Vue from 'vue'
import VueRouter from 'vue-router'Vue.use(VueRouter)

Vue CLI

使用Vue CLI的项目可以运行下面的命令来以插件形式安装vue router,但是要注意这样做会覆盖你的App.vue文件,注意备份!

vue add router

从Github克隆最新版本

git clone https://github.com/vuejs/vue-router.git node_modules/vue-router
cd node_modules/vue-router
npm install
npm run build

入门

Vue创建的应用程序由一个个组件构成,Vue Router的路由映射则将这些组件映射到路由上,如此便完成了在哪里渲染什么的目标。

在线快速尝鲜Vue

一个基础示例:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script src="https://unpkg.com/vue@2/dist/vue.js"></script><script src="https://unpkg.com/vue-router@3/dist/vue-router.js"></script>
</head><body><div id="app"><h1>Hello App!</h1><p><!-- router-link会被渲染为a标签,to属性指定目标链接 --><router-link to="/foo">Go to Foo</router-link><router-link to="/bar">Go to Bar</router-link></p><!-- route匹配到的组件将被渲染到这里 --><router-view></router-view></div><script>// 组件定义const Foo = { template: '<div>foo</div>' }const Bar = { template: '<div>bar</div>' }// 定义routesconst routes = [{ path: '/foo', component: Foo },{ path: '/bar', component: Bar }]// 创建router实例const router = new VueRouter({routes // `routes: routes`的简写})// 创建和挂载根Vue实例const app = new Vue({router, // 注入路由,于是我们可以通过this.$router访问router,通过this.$route访问当前routecomputed: {username() {return this.$route.params.username}},methods: {goBack() {window.history.length > 1 ? this.$router.go(-1) : this.$router.push('/')}}}).$mount('#app')</script>
</body></html>

<router-link>在路由匹配成功时,会自动设置.router-link-activeclass属性值。

参考资料

  • Installation-Vue Router 3
  • Get Started-Vue Router 3
http://www.lryc.cn/news/192206.html

相关文章:

  • SpringMVC中@RequestMapping注解的详细说明
  • Java - 发送 HTTP 请求的及其简单的方法模块 - hutool
  • Nie et al. 2010 提出的不等式定理
  • chatGLM2-6B模型LoRA微调数据集实现大模型的分类任务
  • Elasticsearch6实践
  • 云原生Kubernetes:K8S集群版本升级(v1.20.6 - v1.20.15)
  • 毅速丨3D打印随形水路模具日常如何保养
  • 尚品甄选2023全新SpringBoot+SpringCloud企业级微服务项目
  • 204、RabbitMQ 之 使用 topic 类型的 Exchange 实现通配符路由
  • qq视频录制教程,让你的视频更加精彩
  • (滑动窗口) 76. 最小覆盖子串 ——【Leetcode每日一题】
  • grep批量筛选指定目录下的所有日志并写入文件内
  • JVM第三讲:JVM 基础-字节码的增强技术详解
  • JWT前后端分离在项目中的应用
  • 系统架构师备考倒计时23天(每日知识点)Redis篇
  • WIN11系统设置重启与睡眠唤醒后自动拨号
  • 【【萌新的SOC学习之AXI-DMA环路测试】】
  • Lua教程
  • 《Node.js+Express+MongoDB+Vue.js全栈开发实战》简介
  • 多输入多输出 | MATLAB实现CNN-BiGRU-Attention卷积神经网络-双向门控循环单元结合SE注意力机制的多输入多输出预测
  • 阿里云r7服务器内存型CPU采用
  • Godot2D角色导航-自动寻路教程(Godot设置导航代理的目标位置)
  • R语言实现向量自回归和误差修正模型——附实战代码
  • 原理:用UE5制作一个2D游戏
  • 【ARM 嵌入式 编译系列 11.3 -- GCC attribute packed noreturn constructor 介绍】
  • 主从Reactor高并发服务器
  • 文心一言Plugin实战来了,测试开发旅游攻略助手
  • 微服务13-Seata的四种分布式事务模式
  • C结构体内定义结构体,不能直接赋值。
  • PHP遇见错误了看不懂?这些错误提示你必须搞懂