路由

路由就是一种对应关系

路由分为前端路由和后端路由

后端路由概念:根据不同用户的URL请求,返回不同的内容   

             本质:URL请求地址与服务器资源之间的对应关系

前端路由概念:根据不同的用户事件,显示不同的页面内容

      本质:用户事件与事件处理函数之间的对应关系

 

前端路由的原理:

当前端的hash地址发生变化的时候,会触发onhashchange事件

window.onhashchange = function(){
//通过location.hash获取最新的hash值
console.log(location.hash)
}

在onhashchange事件的处理函数中,根据当前的hash地址来进行判断并展示当前hash地址对应的页面内容

 

前端路由会使用VueRouter组件来进行

VueRouter 路由管理器  用于SPA应用程序开发

SPA的实现原理之一:基于URL地址的hash(hash的变化会导致浏览器记录访问历史的变化,但是hash的变化不会触发新的URL请求)   核心的技术就是前端路由

 

 

配置路由规则并创建路由实例

注  意: redirect:"/user"     -----默认的hash地址

//创建路由实例对象
var router = new VueRouter({

//router 是路由规则数组
routes:{
//每个路由规则都是一个匹配对象,其中至少包含 path 和component 两个属性:
//path表示当前路由规则匹配的hash地址
//component表示当前路由规则对应要展示的组件
{path:"/user",component:User'},
{path:"/oopp",component:oopp'},
}
})

基本使用步骤:

 

动态路由匹配方法:

 

//动态路径参数,以冒号开头
{path:"/user/:id",component:User}

 

路由组件传递参数

props的值为布尔类型

 

const router = new VueRouter({
routes:[
//如果props被设置为 true ,route.param 将会被设置为组件属性 
{path:"/user/:id",component:User,props:true}

]

})
const User = {
  props:["id"],       //使用props接收路由参数
template:"<div>用户ID:{{id}}</div>"     //使用路由参数 
}

 

 

 

 

posted @ 2020-09-07 21:27  缔造cool  阅读(116)  评论(0编辑  收藏  举报