Angular2 - 更改位置而不触发路线

2024-06-07

我有一个使用服务来加载项目列表的视图。我总是只显示一个项目,并使用 > 按钮在项目之间移动。

有没有办法在不触发 Angular 路由系统的情况下更改浏览器地址栏中的地址并将记录添加到浏览器历史记录中?

我知道如果我使用:

location.go('users/3');

它会做上述的事情,但它也会触发 Angular 的路由系统,从而再次调用我的服务。

Edit:

看起来像是位置的功能

location.replaceState('users/3');

正在接近我想要做的事情 - 它更改浏览器中的 url,而不触发任何 Angular 内部结构,不幸的是,它替换了历史记录中的最新位置,而不是将新位置推到顶部。


如果不将服务添加到组件中provider:列表中您将不会获得此服务的新实例。只需在以下位置注册即可使服务全球化bootstrap(AppComponent, [MyGlobalService]).

实施CanReuse https://angular.io/docs/ts/latest/api/router/CanReuse-interface.html也可以看看Angular 2:在不同组件之间交换而不破坏它们 https://stackoverflow.com/questions/33648355/angular-2-swapping-between-different-components-without-destroying-them可能有助于防止在重用同一路由时重新初始化组件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Angular2 - 更改位置而不触发路线 的相关文章

随机推荐

  • Python Tkinter 网格复选框

    我想知道是否有一种简单的方法可以使用 Tkinter 创建复选框网格 我正在尝试制作一个由 10 行和 10 列 即 100 个复选框 组成的网格 以便每行只能选择两个复选框 编辑 我正在使用带有spyder的python 2 7 到目前为
  • Javascript TypeError:无法读取未定义的属性“indexOf”

    在此代码中 我想从cart products array var cart products 17 1 19 1 18 1 var product 17 each cart products function key item if ite
  • 使用 Python 导入包含文本和数字数据的文件

    I have a txt file which has text data and numerical data The first two rows of the file have essential information in te
  • 如何在python中访问矩阵每个元素的相邻单元格?

    这里 如果两个单元共享边界 则它们被认为是相邻的 例如 A 5 6 4 2 1 3 7 9 8 这里 索引 0 0 的相邻元素位于索引 0 1 和 1 0 处 索引 1 1 的相邻元素位于索引 0 1 1 0 2 1 处 和 1 2 假设你
  • 一个好的 WPF 滚动时间线控件? (精美的日期时间选择器)

    我正在寻找可以用作时间线控件的东西 一种 横幅 用户可以向左或向右拖动以前进或后退 然后他或她应该能够在该控件上选择一个时间点 一个精美的日期时间选择器 有任何想法吗 欢迎您尝试我的新 TimelineControl 我已经在 codepl
  • 将 Unmanaged 与 nil 进行比较

    代码是从这篇博客文章复制的 http matthewpalmer net blog 2014 06 21 example ios keychain swift save query http matthewpalmer net blog 2
  • 安塞布尔 + 10.11.6

    我在 非常 干净地安装 10 11 6 时遇到了 Ansible 的奇怪问题 我已经安装了brew zsh oh my zsh Lil snitch 和1password 实际上没有安装其他任何东西 我安装了ansible brew ins
  • 在 UIScrollView Swift 中禁用垂直滚动

    不要将此问题标记为重复 我读了很多问题 但没有找到问题的答案 我的问题如下 我有一个UIScrollView它应该只水平滚动 这里它垂直滚动 20px 奇怪的事实 它似乎与状态栏的高度相同 我尝试打印内容大小 y 偏移量和高度UIScrol
  • 如何使用波斯日期(Shamsi)? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想直接使用 Excel 2007 工作表中的波斯日期 Hijri Shamsi 作为计算基础 这怎么可能 我将通过以下方式将波斯日期转换
  • Material UI 的自定义 ESLint 导入规则

    我在 React 中有一个项目 使用 Material UI 我正在应用其中之一他们建议的方法 https material ui com guides minimizing bundle size option 2减少我的包大小 基本上
  • 自己绘制的WPF自定义滑块

    这是我关于堆栈溢出的第一个问题 所以不要踢它 我在尝试创建 Mac 风格的滑块控件时遇到问题 我已经发现这个解决方案 http www codeproject com KB miscctrl MAC Slider aspx我已经在我的解决方
  • 无需域名即可登录 Azure Active Directory

    我们希望使用 Azure Active Directory 作为面向外部的应用程序的用户存储 目前 我们的 MVC C 4 5 应用程序 使用 WIF 正在通过被动联合对本地 ADFS 2 0 代理 服务器进行身份验证 我们希望将其 移植
  • 重载算术运算符

    赋值运算符可以声明为 T 运算符 const t 在类中 但不能以这种方式定义算术运算符 它必须是友元函数 我不明白为什么 你能解释一下吗 算术运算符不必须是友元 那么你可以这样定义 MyClass MyClass operator con
  • 如何使用 jsDoc 在名称/事件/回调中包含点?

    The 名称路径的文档 http usejsdoc org about namepaths html说你应该转义特殊字符 上面是一个名称空间的示例 其中包含 不寻常 的字符 成员名称 哈希字符 破折号 甚至引号 可供参考 您只需引用这些名称
  • Log4Net“找不到架构信息”消息

    我决定使用log4net http logging apache org log4net index html作为新 Web 服务项目的记录器 一切工作正常 但对于我在我的应用程序中使用的每个 log4net 标签 我都会收到很多类似下面的
  • 从关键字后的文本中提取字符串

    我想从 SQL 字段中关键字后面的文本中提取内容 我有一个名为Description在表中 该字段的内容是 asdasf 关键字 狗 aeee 关键字 猫 ffffaa 关键词 狼 我想提取并保存 关键字 之后的文本 在本例中dog cat
  • 在 Python 中将嵌套字典位置作为参数传递

    如果我有一个嵌套字典 我可以通过索引来获取键 如下所示 gt gt gt d a b c gt gt gt d a b c 我可以将该索引作为函数参数传递吗 def get nested value d path a b return d
  • 从图像创建半透明光标

    是否可以从图像创建光标并使其半透明 我目前正在拍摄自定义图像并覆盖鼠标光标图像 如果我可以将其设为半透明 那就太好了 但不是必需的 销售人员喜欢闪亮的 目前正在做这样的事情 Image cursorImage customImage Get
  • 注入包含接口的所有已注册实现的 Enumerable

    给出以下接口 public interface IMyProcessor void Process 我希望能够注册多个实现 并让我的 DI 容器将它们的可枚举注入到这样的类中 public class MyProcessorLibrary
  • Angular2 - 更改位置而不触发路线

    我有一个使用服务来加载项目列表的视图 我总是只显示一个项目 并使用 gt 按钮在项目之间移动 有没有办法在不触发 Angular 路由系统的情况下更改浏览器地址栏中的地址并将记录添加到浏览器历史记录中 我知道如果我使用 location g