- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个场景,将数据保存到数据库后,我需要关闭 Bs-modal
弹出窗口,并且我的保存是在子组件中完成的,因此我传递了 Bs-modal
code> 在子组件中使用 ()Input 并使用那里隐藏弹出窗口,但无法在子组件中读取我的模式
HTML 父组件
<div bsModal #lgModal2="bs-modal" class="modal fade" tabindex="-1"
role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title pull-left">Edit Product</h4>
<button type="button" class="close pull-right" (click)="lgModal2.hide()" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<app-edit-product [productId]="prodId" [modalId]="lgmodal2" #child ></app-edit-product>
</div>
</div>
</div>
</div>
子组件 TS
import { BsModalRef } from 'ngx-bootstrap';
export class EditProductComponent implements OnInit {
@Input() modalId:BsModalRef;
somefunction(){
this.modalId.hide();
}
}
Error:An Unexpected error occured!TypeError: Cannot read property 'hide' of undefined
也尝试过
@Output() closeModal:EventEmitter<Event> = new EventEmitter();
@Input() onHide:any;
然后
somefunction(){
this.closeModal.emit(this.onHide);
}
任何帮助都会非常感谢!
最佳答案
HTML 父级:
<div bsModal #lgModal2="bs-modal" class="modal fade" tabindex="-1"
role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title pull-left">Edit Product</h4>
<button type="button" class="close pull-right" (click)="hideModal()" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<app-edit-product [productId]="prodId" [modalId]="lgmodal2" (saveDone)="hideModal()" #child ></app-edit-product>
</div>
</div>
</div>
</div>
子组件 TS:
export class EditProductComponent implements OnInit {
@Output() saveDone: EventEmitter<any> = new EventEmitter<any>();
somefunction(){
this.saveDone.emit();
}
}
父组件 TS:
import { Component, ViewChild } from '@angular/core';
import { ModalDirective } from 'ngx-bootstrap/modal';
export class ParentComponent implements OnInit {
@ViewChild('lgModal2') lgModal2: ModalDirective;
hideModal(){
this.lgModal2.hide();
}
}
希望这有帮助。
关于javascript - ngx-bootstrap BsModal 从子组件关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48340509/
我正在尝试使用 intro.js 的 r 包装器突出显示我的 bsModal 的元素,但是无法让它工作。我也尝试过包含自定义 js 脚本,但我的 js 很糟糕。 我还设置了多个不同的测试,希望它能捕获
我有一个场景,将数据保存到数据库后,我需要关闭 Bs-modal 弹出窗口,并且我的保存是在子组件中完成的,因此我传递了 Bs-modal code> 在子组件中使用 ()Input 并使用那里隐藏弹
我正在 bs-modal 中渲染一个表单,其中有一个包含 5 个项目的纸张选择。当我单击纸张选择时,下拉菜单出现在 bs-modal 后面,并且不可用。 我尝试为特定的纸张选择指定一个高的 z-ind
shiny 应用程序中的 bsModal 窗口带有默认的关闭 按钮。有没有办法可以禁用?我试图在 SO 上查找类似的问题,但没有找到符合我要求的问题。我认为,如果用户可以使用右上角的 X 按钮关闭窗口
我是一名优秀的程序员,十分优秀!