18
|
Francesco Borzi · 技术社区 · 7 年前 |
![]() |
1
32
我用 ngx-bootstrap Modals 和 RxJs Subjects .
以下是模板:
应用程序内。单元ts文件转到@NgModule部分,并将ConfirmLeaveComponent组件添加到entryComponents。
|
![]() |
2
3
除了ShinDarth的好解决方案之外,似乎值得一提的是,您还必须涵盖对模式的取消,因为action()方法可能不会被激发(例如,如果您允许esc按钮或在模式外单击)。在这种情况下,observable永远不会完成,如果你使用它进行路由,你的应用程序可能会卡住。
在我的例子中,我映射了提到的
|
![]() |
3
3
只需扩展mitschmidt提供的关于单击外部/转义按钮的附加信息,这个canDeactivate方法可以与Francesco Borzi的代码一起工作。我只是在函数中内联添加了subscribe to onHide():
|
![]() |
4
2
|
![]() |
5
1
这是我的实现,使用ngx引导对话框在离开某个路由之前获得一个确认对话框。在服务的帮助下,我有一个名为“canNavigate”的全局变量。如果为true或false,此变量将保留布尔值,以查看是否可以进行导航。该值最初为true,但如果我在组件中进行更改,我将使其为false,因此“canNavigate”将为false。如果为false,我将打开对话框,如果用户放弃更改,它将通过使用queryParams转到所需的路由,否则它将不会路由。
|
![]() |
6
1
您可以将值传递给
|
![]() |
7
0
我使用“角度材质”对话框实现了此解决方案:
|
![]() |
8
0
这是一个没有主题的工作解决方案,您可以添加布尔属性
这是html
|
![]() |
Devmix · 如何在new Map()中保存状态? 1 年前 |
![]() |
Luisus · 从Prisma 5客户端提取类型 1 年前 |
|
Rostys · TypeScript:使用类型转换进行类型保护 1 年前 |
![]() |
Anne · 类型不一致的对象的TypeScript类型定义 1 年前 |
|
tuimui · 使用react+ts通过道具传递数据 1 年前 |