我希望用户为其当前搜索添加书签或复制/粘贴,以便他们可以使用相同的参数进行搜索。
问题是:
假设用户使用param1进行搜索,然后使用param2进行搜索。 当他按下后退按钮时,他不会看到param1的结果。
那是因为我们通过ajax发送GET请求并使用javascript更新ui而不刷新页面。
如果您想显示正确的先前搜索结果,我猜
我猜这种问题可能发生在SPA的许多领域,而不仅仅是搜索。
我想知道人们如何解决这个问题,以及是否有一个被广泛接受的解决方案,无论是策略还是图书馆......
我正在使用react,react-router,redux。
答案 0 :(得分:0)
您可以尝试使用哈希标记将搜索字符串添加到您的网址吗?
window.location.hash = 'SEARCH_1';
我不确定这是否适合您的需要,但您可以在搜索功能的成功回调中添加此代码。它将使用户能够使用浏览器返回按钮。
在componentDidMount()中,您需要检查哈希标记是否为空。如果它不为null,则需要在组件完成加载时调用搜索函数来检索结果。