位置: IT常识 - 正文

Vue Router的简单了解(vue–router)

编辑:rootadmin
🍀Vue Router Vue Router官方文档 传统Web项目开发往往采用超链接实现页面之间的切换和跳转。Vue开发的是单页面应用(Single Page Application,SPA),不能使用超链接<a>标记实现切换和跳转。 因为项目打包后(npm run build),就会产生dis ... ?Vue Router

推荐整理分享Vue Router的简单了解(vue–router),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue–router,vue router教程,vue–router,vue router用法,vue router routes,vue $route $router,vue router教程,vue-router,内容如对您有帮助,希望把文章链接给更多的朋友!

Vue Router官方文档

传统Web项目开发往往采用超链接实现页面之间的切换和跳转。Vue开发的是单页面应用(Single Page Application,SPA),不能使用超链接<a>标记实现切换和跳转。因为项目打包后(npm run build),就会产生dist文件夹,该文件夹中只有静态资源和一个index.html文件,所以使用<a>标记是不会生效的。此时必须使用Vue Router进行管理。在Vue Router单页面应用中,路径之间的切换就是组件的切换。路由模块的本质就是建立起URL和页面之间的映射关系。

安装与使用npm install vue-router@3 //vue2的安装命令

如果不进行版本号的指定,直接执行npm install vue-router,控制台会报如下错误:

其实就是vue-router默认版本号为4,在vue2中不能安装高版本的vue-router

新建router的配置文件

在router/index.js中写router配置项

// 引入VueRouterimport VueRouter from 'vue-router'// 引入组件import About from '../components/About'import Home from '../components/Home'const router = new VueRouter({routes:[{path: '/about',component: About},{path: '/home',component: Home}]})//暴露routerexport default router

在main.js中该路由配置文件

import Vue from 'vue'import App from './App.vue'//引入VueRouterimport VueRouter from 'vue-router'//引入路由器import router from "./router";Vue.config.productionTip = falseVue.use(VueRouter)new Vue({ render: h => h(App), router}).$mount('#app')Vue Router的简单了解(vue–router)

Home组件

<template><div> <h3>首页部分</h3></div></template>

About组件

<template><div> <h3>关于部分</h3></div></template>

在app.vue中进行路由的切换及相应页面的显示

<template> <div id="app"> <p><!-- 使用router-link实现路由切换--> <router-link to="/home">首页</router-link> <br> <router-link to="/about">关于</router-link> </p><!-- 指定组件的呈现位置--> <router-view></router-view> </div></template>

通过切换,“隐藏”了的路由组件,默认是被销毁的,需要的时候再去挂载

每个组件都有自己的$route属性,里面存储着自己的路由信息

整个应用只有一个router,可以通过组件的$router属性获取到

路由中有3个基本概念:route、routes、router

route是一条路由,使用{...}定义,内含两个基本属性:path和component,实现路由与组件的映射routes是一组路由,把每条路由组合起来,形成一个数组,类似于[route1,route2,...]router是路由管理器,用来管理路由嵌套路由

配置路由规则,使用children配置项

routes:[{path: '/about',component: About},{ path: '/home', component: Home, children:[ { path: 'news', component: News }, { path: 'message', component: Message } ] }]

跳转(要写完整路径)

<router-link to="/home/news">News</router-link>query参数

传递参数

//写法一<router-link :to=`/home/message/detail?id=${m.id}&title=${m.title}`>跳转</router-link>//写法二<router-link :to="{path: '/home/message/detail',query:{id: m.id,title: m.title}}">跳转</router-link>

接收参数: $route.query.id $route.query.title

name属性简化路由跳转routes:[{name: 'guanyu', //通过name属性简化跳转的路由地址path: '/about',component: About},{ path: '/home', component: Home, children:[ { path: 'news', component: News }, { name: 'xiaoxi', //通过name属性简化跳转的路由地址 path: 'message', component: Message } ] }]

简化后的跳转

<router-link :to="{name: 'xiaoxi'}">跳转</router-link><router-link :to="{name: 'xiaoxi',query:{id: m.id,title: m.title}}">跳转</router-link>params参数

配置路由,

本文链接地址:https://www.jiuchutong.com/zhishi/311751.html 转载请保留说明!

上一篇:帝国CMS如何设置默认自动分页(帝国cms建站教程)

下一篇:帝国CMS商城系统如何实现在线支付后发送订单邮件提醒功能(帝国cms使用手册)

  • iQOO10高耗电提醒在哪开启(iqoo7耗电异常)

  • 全选是ctrl加什么

  • 联通app怎么解绑副卡(联通app怎么解绑亲情号)

  • QQ通讯录刷不出来怎么办(qq通讯录刷不出来限制)

  • 微信怎么给别的手机号充流量(微信怎么给别的卡转钱)

  • 抖音隐藏无效视频怎么找到(抖音隐藏无效视频看不到怎么删除)

  • 华为mate20充电器是多少w(华为Mate20充电器长啥样)

  • 开自动回复可以续火吗(开了自动回复之后自己看得到吗)

  • fitpro手环是什么牌子(fitpolo手环)

  • 华为v30微信视频美颜怎么开(华为v30微信视频美颜设置)

  • 华为畅享10怎么设置指纹解锁(华为畅享10怎么样值得买吗)

  • 现在3g手机还能上网吗(现在3g手机还能用微信吗)

  • 荣耀v30有没有防水(荣耀v30防摔吗)

  • ios12比11流畅吗(苹果12流畅度对比苹果11)

  • 电脑显卡插在哪个位置(电脑显卡插哪个卡槽)

  • 微信如何打出doge表情(微信如何打出带圆圈11)

  • 能看朋友圈却不能点赞(能看朋友圈却不能看到动态)

  • 格力润享带wifi功能吗(格力润享带自清洁功能吗)

  • r17电池多少毫安(r17电池多少毫安充电)

  • 开机后网速不能达到最大带宽(开机后网络连接很慢)

  • 新爱尔兰岛上的蓝指海星,巴布亚新几内亚 (© Jurgen Freund/Minden Pictures)(爱尔兰新手岛)

  • vite 运行项目报错 ‘axios/index.js‘ does not provide anexport named ‘default‘(vi应用项目)

  • GPT3.5 , InstructGPT和ChatGPT的关系

  • HTML侧边导航栏(html导航栏边框)

  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设 电脑维修 湖南楚通运网络