javascript - 在 Angular 2 中路由期间保持组件事件

标签 javascript typescript angular

我有一个主要使用 jquery 用 javascript 编写的应用程序。它很丑陋,难以维护并且迫切需要一个框架,所以我将它移植到 Angular 2 中使用

我已经使用两条路线设置了我的 Angular 2 应用程序:

路由 A:包含一个带有 WebGL Canvas 的组件 Route B:包含显示其他数据的组件

根据用户机器的不同,webgl 组件的初始化可能需要相当长的时间。

当用户从Route A导航到Route B,然后再次返回Route A时,Angular 2 正在重新创建和重新- 初始化 WebGL 组件...我想按原样重用该组件以避免这种情况。

在 jquery 中,我只是在 Canvas 上使用了隐藏和显示。

我的问题非常类似于:

Angular 2 keep route alive even when not navigated to it

然而,使用 CanReuse 的解决方案似乎无效,如下所示:

routerCanReuse and routerOnReuse is not called when route changes

因为它旨在处理进出相同类型组件的路由。

最佳答案

通过覆盖 RouteReuseStrategy 可以在路由期间保持组件事件。
感谢这篇精彩的帖子 Angular 2 Component Reuse Strategy

关于javascript - 在 Angular 2 中路由期间保持组件事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37312493/

相关文章:

TypeScript:创建具有可写属性的子类

javascript - Amcharts 4 获取嵌套数组数据

Angular 6 http POST - 将参数设置为 URL 中的查询字符串

javascript - 链接表行和列 - jquery

javascript - 如何在asp.net中从c#执行javascript

javascript - 每次在数据表中更改页面时调用一个函数

javascript - 子域 CSS 和 JS 文件问题

angular - 如何在Angular2中动态更改按钮属性

angular - NRWL 中的多个应用程序可以访问定义文件的位置

node.js - 是否可以在多个项目之间共享相同的 Node 模块?