关闭特定的引导程序模态

时间:2020-07-28 18:19:54

标签: angular typescript bootstrap-modal angular8

我在Angular 8 / Typescript中使用了多种模态。
第一个模态打开并显示信息。 第二个模态打开,并允许您做一些工作。 然后显示另一个我订阅的@Output确认模式(是/否)。

如果答案是肯定的,我想关闭确认模态,这很容易,但是我无法同时关闭第二模态。

模式1打开第二个模式...

config = {
   animated: true,
   keyboard: true,
   backdrop: true,
   ignoreBackdropClick: true,
   class: 'modal-dialog-centered'
};
openSecondModal() {    
this.bsModalRef = this.myBsModalService.show(SecondModalComponent, this.config);
}

第三确认模式...

  const initialState = {
     message: 'Yes/No modal',
     title: '3rd Modal',
     iconType: 'success',
     modalSize: 'modalSmall'
     };
          this.thirdModalRef = this.modalService.show(FeedbackModalComponent, { initialState });
          this.thirdModalRef.content.buttonClick.subscribe((feedbackData) => {
            if (feedbackData != null) {
             ****************************************
               CLOSE SECOND MODAL HERE
             ****************************************
            }
          });

我尝试了几件事,似乎没有什么东西可以隐藏第二个模态...它似乎只是挂起了,所以我根本无法将其关闭。

任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:0)

尝试一下。添加 id 以关闭 html 中的模式按钮。

<button id="closeModal1" type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>

然后在 ts 端使用此代码。

document.getElementById("closeModal1").click();

当其触发模式关闭时。如果要隐藏关闭按钮,请在html中使用此按钮,而不要使用第一个按钮。

 <button id="closeModal1" [hidden]="true" type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>

您可以使用其他 id 关闭任何模式。

答案 1 :(得分:0)

有些名字冲突,这解决了这个问题...

library(data.table)
library(ggplot2)
library(grid)
library(gridExtra) 
library(ggpubr)

P1 <- ggplot(iris,aes(x=Sepal.Length,y=Petal.Length)) + geom_point(size = 2, aes(color=Species))   
P2 <- ggplot(iris,aes(x=Petal.Width,y=Petal.Length)) + geom_point(size = 2, aes(color=Species))   

#PCA  
iris.pca <- prcomp(iris[,1:4], scale. = TRUE)
dataIris.pca  <- data.frame(summary(iris.pca)$importance) 
dat <- data.table(PC1=iris.pca$x[,1],PC2=iris.pca$x[,2],Species=  iris[,5])
dat <- dat[order(dat$Species),]

#PCA plot
mainPlot <- ggplot(dat,aes(x=PC1,y=PC2)) + geom_point(size = 2, aes(color=Species))   
mainPlot

#Prop variance table
Prop <- as.data.frame(summary(iris.pca)[[6]])
PropTable <- round(Prop[2,],3)

#Prop variance plot
propPlot <- tableGrob(PropTable,theme = ttheme_default(base_size = 8))

P3 <- grid.arrange(propPlot, mainPlot, nrow = 2, as.table = TRUE, heights = c(1, 3))
ggarrange(P1, P2, P3, labels = c("A", "B", "C"),  ncol=3, nrow=1, common.legend = TRUE, legend="bottom")