反应 router.push 和 router.replace 有什么区别?
答案 0 :(得分:1)
您在网络浏览器中访问的页面的历史就像一个created = Order.where(status: 'open')
on_delivery = Order.where(stauts: 'on_delivery')
orders = created + on_delivery
orders.sort_by(&:status_date)
数据结构。您可以将新记录stack
放置在历史记录堆栈的顶部,也可以push
保留顶部的记录。如果您使用replace
,然后按浏览器的“后退”按钮,它将带您回到当前所在的页面,但是如果您使用push
,它将使您返回两页。
答案 1 :(得分:1)
路由器历史记录的工作方式类似于stack
中的routes
。使用router.replace
时,将覆盖堆栈顶部。使用router.push
时,它将在stack
的顶部添加一条新路由。
路由器历史记录可让您返回到最后一页。例如,当用户导航到无效路线时,可以使用router.replace
来防止用户导航回无效路线。