javascript - 防止 Angular 4 破坏 View / Controller

标签 javascript angular tabs lifecycle

我正在使用 Angular 4,并且我有一个来自此处的选项卡组件 NgbTab reloading components on tab chage (ngb-tabset)。当我在选项卡之间来回切换时,我注意到我的组件正在重新创建。有没有办法在隐藏特定选项卡时防止 Angular 破坏我的选项卡 UI?

如果没有,是否有更好的方法来构建我的服务调用?我的意思是我的 x-component.ts 调用 x-service.ts 来获取初始数据。 Controller (x-component.ts) 将此调用的结果存储到数组或某种类型的对象中。

随着我的组件被销毁并重新创建,每次用户切换选项卡时,我的 Controller 都会一遍又一遍地进行这些调用。

最佳答案

此行为特定于 ng-bootstrap,并且有一个选项可以更改它:destroyOnHide 。只需将其设置为 false 即可。请参阅他们的文档 here .

示例:<ngb-tabset [destroyOnHide]="false"></ngb-tabset>

关于javascript - 防止 Angular 4 破坏 View / Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45664156/

相关文章:

javascript - 发送键不会触发按键向上或按键按下

javascript - 使用 node.js 写入 MongoDB 副本集

angular - 了解 Angular 4 框架和 MDC Webcomponent : Drawer

angular - 错误 错误 : Uncaught (in promise): Error: Cannot match any routes. URL 段 : 'list' Error: Cannot match any routes. URL 段: 'list'

Jquery Rounded Tabs Cross Browser(小问题)

jquery - 如何将选项卡的内容克隆到其余选项卡 Jquery

objective-c - 如何在标签栏 Controller View 上创建后退按钮?

javascript - 从 JSFiddle 重新创建一个简单的旋转木马 slider

javascript - IE10 Extjs 4.1.0 insert Sibling 不能正常工作

angular - 使用 Angular 项目时,只要打开开发人员工具,Internet Explorer 11 就会崩溃