我正在尝试在我的 Angular 应用程序中使用ngx-smart-modal在click
. 我目前面临的问题是,一旦加载了组件视图,模式就会在加载时显示。
在文档中,指定"autostart" =false
在组件初始化时不加载模式,但这似乎不起作用
这是我的模板视图
<!-- Trigger/Open The Modal -->
<button id="myBtn" class="btn btn-primary"
(click)="openModal($event)" >Open Modal</button>
<ngx-smart-modal #myModal (onOpen)="modalOpened($event)"
identifier="myModal" autostart="false">
<h1>Title</h1>
<p>Some stuff...</p>
<button (click)="closeEvent($event)">Close</button>
</ngx-smart-modal>
我无法在构造函数或ngOnit
生命周期挂钩中获取处理程序,并且只能在 中获取处理程序,ngAfterViewInit()
并且到那时模态被加载。
ngAfterViewInit(){
this.smartModalService.get('myModal').close();
console.log('after view modalstack'
,this.smartModalService.get('myModal').autostart);
}
控制台日志给了我错误,但模式在加载时显示。我尝试在 after view init 钩子中关闭它,但在加载时关闭模态窗口仍有一秒钟的延迟,这可以看出。
非常感谢你们的任何帮助。