gpt4 book ai didi

javascript - 使用 replaceState() (或其他方法)更新状态对象而不是替换它

转载 作者:行者123 更新时间:2023-11-28 03:43:46 26 4
gpt4 key购买 nike

有没有什么技术可以用来更新历史状态对象而不是替换它?

给定一个看起来像这样的现有状态对象:

{ prop1:someValue, prop2:someOtherValue }

我希望能够调用将修改 prop1 但不影响 prop2 的内容。

我想我真的在寻找 modifyState() 而不是 replaceState()

如果我知道 prop2 的值是什么,这将是微不足道的,但我不知道。 Firefox 允许您直接读取 history.state,因此我可以在 Firefox 上找到值并使用 replaceState()。然而,这不适用于 Chrome、Safari 等。因为(据我所知)它们不允许直接访问 history.state

有什么方法可以让我如上所述修改状态对象吗?

最佳答案

History.js自 Chrome 8 以来,允许通过 replaceState 进行状态操作。

我目前有一个类似的问题,只需要修改一部分状态。这是通过克隆当前状态数据、更改值然后调用 replaceState 来实现的。

History.replaceState(newState, null, oldState.url);

关于javascript - 使用 replaceState() (或其他方法)更新状态对象而不是替换它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8434522/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com