当前位置: 首页 > 面试题库 >

AngularJS重定向而不推送历史记录状态

宇文嘉勋
2023-03-14
问题内容

我正在开发一个AngularJS应用程序,该应用程序具有捕获所有路由(例如.when('/:slug', {...))的功能,这对于从该应用程序的先前(非角度)版本中支持旧版网址格式是必需的。响应捕获的控制器都尝试拉相关对象,如果找不到,则使用该$location.path方法重定向到404页面。这可以使用户进入404页面,但是当用户在其浏览器中进行回击时,会将他们带回到最初迫使他们进入404页面的页面,最终他们无法逃脱循环。

我的问题是,是否有1)更好的模式来处理这种情况,或2)是否有重新路由用户的方法而不强制浏览器中的历史记录推送状态?


问题答案:

您可以更改URL,而不添加到历史状态,发现这里在“替换法”。这实际上与调用HTML5的history.replaceState()相同。

$location.path('/someNewPath').replace();

我还没有发现无需更改url就可以更改视图。我发现,更改视图的唯一方法是更改​​位置路径。



 类似资料:
  • 读取播放历史信息 调用地址 http://api.bilibili.cn/history 返回 返回值字段 字段类型 字段说明 results int 返回的记录总数目 list object 返回数据 返回字段 “list” 子项 返回值字段 字段类型 字段说明 aid int 视频编号 typeid int 视频分类ID typename string 视频分类名称 title string

  • 历史记录 控制台维护 Elasticsearch 成功执行的最后500个请求列表。点击窗口右上角的时钟图标即可查看历史记录。这个图标会打开历史记录面板,您可以在其中查看历史请求。您也可以在这里选择一个请求,它将被添加到编辑器中当前光标所在的位置。 图 9. 历史记录面板

  • 3.3.1.1. 同步的文件历史记录 微力同步记录对文件的添加,修改、删除的操作记录,通过历史记录列表可查看时间时间及发生设备,如下: 事件时间,显示添加、修改、删除等操作发生的时间; 文件时间,显示该文件的最后修改时间; 操作类型,显示此次针对该文件所进行的操作的类型; 发生设备,显示进行此操作的设备名称; 目录,显示该文件所属同步目录; 清空历史记录,点击后可清除所有记录,此操作仅清除记录而已

  • 问题内容: 在当前版本的React Router(v3)中,我可以接受服务器响应并用于转到相应的响应页面。但是,这在v4中不可用,我不确定哪种适当的处理方式。 在此示例中,使用Redux,当用户提交表单时, components / app-product-form.js 调用。服务器返回成功后,该用户将被带到“购物车”页面。 如何从React Router v4的功能重定向到购物车页面? 问题答

  • 入口: 在路线规划右上角,有历史记录入口,无论“单路线规划”、“多路线规划”的结果,都会自动进行记录,点击进入该界面 在“路线规划”模块下展开二级模块“历史记录”,可以点击进入 历史记录列表 支持按照时间搜索记录 支持单个删除记录 支持一键删除全部记录 支持点击查看规划历史详情 历史详情 记录规划人、规划时间、规划结果 结果详情界面回放、支持点击查看

  • 似乎有一些关于使用什么的混淆: