vue3 - 32.router.2 - 路由模式

我们需要通过vue-router当中声明路由模式,比如路由模式是哈希还是history

比如:

import {
    createWebHistory,
    createWebHashHistory,
    createMemoryHistory
} from "vue-router";

其中在vue2当中声明和vue3当中声明的方法的名称有一些变化:

1.vue2和vue3模式的区别:

vue2 mode => history
vue3 mode => createWebHistory

vue2 mode => hash
vue3 mode => createWebHashHistory

vue2 mode => abstact
vue3 mode => createMemoryHistory

2.vue router,history和哈希的区别:

哈希类型:
哈希类型路径会带/#,原理是location.hash去匹配,当我们在控制台输入的时候,会返回一个#/,监听路由变化的原理是通过window.addEventListener,有一个hashchange回调函数,通过event去监听左右箭头的变化,通过event回调函数会返回newURL和oldURL

history类型:
跳转是没有#的,history是基于H5的history方法实现的,监听路由变化的原理是通过window.addEventListener,有一个popstate回调函数,通过event去监听的,会返回一个state对象,里面有back(上一个url地址)current(当前url地址)forward,跳转是通过history.pushstate结合vue内置跳转方法实现跳转的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值