- 请教一下vue-router.replace的实现原理是什么?怎么就移除当前的历史记录?怎么实现将hash替换的?
vue-router , hash模式下,是通过这个方法来
如果支持pushState ,则用history.replaceState , 如果不支持,则用replace
// 来自vue-router源码: src/history/hash.js
function replaceHash(path) {
if (supportsPushState) {
replaceState(getUrl(path))
} else {
window.location.replace(getUrl(path))
}
}
13 回答12.7k 阅读
7 回答1.8k 阅读
5 回答1.3k 阅读
9 回答1.6k 阅读✓ 已解决
3 回答1k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
跟
history.replaceState
相似,会替换当前的地址访问历史记录