History库源码分析-Action 动作类型

更多内容,请访问:两种路由模式及React-Router中的History库源码分析

Action 枚举


export enum Action {
  Pop = "POP",
  Push = "PUSH",
  Replace = "REPLACE",
}

Action介绍


Action表示location变化(路由切换)的动作类型,目前有三种动作类型:

1. POP

在history栈中,跳转到其他已存在的历史纪录(回退或者前进),这种location变化,叫做POP,比如浏览器的前进或者后退。

POP动作类型也作为默认的动作类型,当进行push或者replace时,再更新当前的动作类型为PUSH或者REPLACE。

2. PUSH

PUSH表示一种新的历史记录被添加到history栈中,例如:react-router中的Link(底层调用的是history.push)。

关于 When this happens, all subsequent entries in the stack are lost.这句话讲解是:

如果此时我们通过回退(浏览器回退或者history.back)回到之前的某个节点后,此时执行Link(或者history.push)等,那么当前的history 栈中,此刻的历史记录是处于栈顶的,而之前因为回退经过的几个节点全部丢失。

3. REPLACE

REPLACE表示当前的历史记录被新的替换掉,通过调用history.replace。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值