我有一个应用程序,您可以通过各种方式(搜索、按类别深入等)访问相册列表。从相册中,您单击打开单张照片并使用左/右箭头以及各种编辑工具遍历它们。每个迭代/工具操作都会执行 history.push() 以将路由添加到路由器历史记录中。我正在尝试实现一个按钮,在您开始查看单张照片之前,该按钮将返回到历史记录中的确切位置。为此,我想将历史堆栈向后移动到历史与多个模式中的一个匹配的点,然后执行 history.go(-14) (或其他)以跳回开始整个的路线链。
我一直在搜索 React 路由器代码以及 HTML5 History 对象,但没有看到任何直接访问历史堆栈的方法,因此我可以将其返回。我宁愿不依赖于让每个单独的照片动作将它们的路径推到一个单独的地方,因为这使它变得脆弱(每个照片动作都是由不同的开发人员构建的,并且将来添加新动作将需要以前的知识来记住这样做)。
我无法进入硬编码路径,因为它会被推到历史堆栈的顶部,并且点击返回箭头只会将您返回到最后一个单独的照片页面,而不是首先生成相册列表的搜索页面.
关于访问历史堆栈的任何建议?