详解vue路由
网络编程 2021-07-04 14:06www.168986.cn编程入门
这篇文章主要介绍了vue路由的相关资料,文中讲解非常细致,帮助大家更好的理解和学习vue路由知识,感兴趣的朋友可以了解下
前端路由和后端路由
- 后端路由对于普通的网站,所有的超链接都是url地址,所有url都对应服务器上对应的资源
- 前端路由对于单页面应用程序来说,主要通过url的hash(#)来实现不同页面的切换,hash还有一个特点HTTP请求中不会包含hash相关的内容,所以单页面程序中的页面跳转主要用hash实现
在单页面应用程序中这种通过hash来改变页面的方式称作前端路由区别于后端路由
路由的使用
1.创建一个路由对象,当导入vue-router包之后,在window全局对象中就有一个路由的构造函数VueRouter
2.在new路由对象的时候可以传递一个配置对象,这个配置对象的route表示路由器的匹配规则
3.每个路由规则都是一个对象,这个规则对象身上必须有两个属性
- 属性1 path表示监听哪个路由链接地址
- 属性2 ponent,表示如果路由是前面匹配到的path,则展示ponent属性对应的组件,ponent属性值必须是一个组件模板对象,不能是组件的引用名称
var login={ template:'<h2>登录</h2>' } var register={ template:'<h2>注册</h2>' } var routerObj=new VueRouter({ routes:[ {path:'/login',ponent:login}, {path:'/register',ponent:register} ] })
4.router:routerObj将路由规则对象注册到VM实例上,用来监听URL地址的变化,然后展示对应的组件
var vm=new Vue({ el:'#div1', data:{ }, methods:{ }, router:routerObj })
5.在控制的div中使用
<router-view></router-view>
6.在搜索栏输入对应的匹配规则,login
7.使用vue官方提供的router-link元素使用,它默认渲染为一个a标签
<router-link to="/login">登录</router-link> <router-link to="/register">注册</router-link>
路由重定向
1.设置一个默认展示组件,不推荐
{path:'/',ponent:login},
2.路由redirect重定向,设置默认组件
{path:'/',redirect:'login'},
路由传参
1.如果使用查询字符串 给路由传递参数则不需要修改路由规则的path属性
<router-link to="/login?id=10">登录</router-link>
2.使用query传递参数
var login={ template:'<h2>登录----{{$route.query.id}}</h2>' }
3.通过params方式传递路由参数,login后面会被解析为id的值
<router-link to="/login/12">登录</router-link>
var login={ template:'<h2>登录----{{$route.params.id}}</h2>' }
{path:'/login/:id',ponent:login},
路由的嵌套
使用children属性实现路由嵌套,子路由path前不要加/,否则永远以根路径开始请求
<div id="div1" <router-link to="/aount">aount</router-link> <router-view></router-view> </div> <template id="tmp1"> <div> <h2>aount 组件</h2> <router-link to="/aount/login">登录</router-link> <router-link to="/aount/register">注册</router-link> <router-view></router-view> </div> </template>
var router=new VueRouter({ routes:[ {path:'/aount',ponent:aount, children:[ {path:'login',ponent:login}, {path:'register',ponent:register} ]} ] })
命名视图
命名视图在ponents(这时会多个s)后加属性再在使用<router-view></router-view>的时候用name引入,可以使一个页面中存在多个路由
<router-view></router-view> <router-view name="left"></router-view> <router-view name="main"></router-view>
var router=new VueRouter({ routes:[ {path:'/',ponents:{ default:header, left:leftBox, main:mainBox }}, ] })
以上就是详解vue路由的详细内容,更多关于vue路由的资料请关注狼蚁SEO其它相关文章!
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程