2017-01-03 95 views
1

我在我們的代碼中使用了一個angular2 ng-bootstrap模態。通過單擊背景或模式外停止關閉模式

我希望當我在模態外單擊時模態不會關閉。目前,模態正在外部點擊時關閉。

在angular1中,我曾用[keyboard] =「false」[backdrop] =「'static'」來做到這一點。但是這是時間在angular2中不起作用了。

這裏是我的plunker

我打開方法如下:

open() { 
    const modalRef = this.modalService.open(NgbdModalContent); 
    modalRef.componentInstance.name = 'World'; 
    } 

回答

7

爲每答案@ anshuVersatile,我知道我們需要使用一些模式選項。

然後,我創建一個NgbModalOptions的對象,並將其作爲我的open方法的第二個參數傳遞,並且它可以工作。

代碼如下:

let ngbModalOptions: NgbModalOptions = { 
     backdrop : 'static', 
     keyboard : false 
}; 
console.log(ngbModalOptions); 
const modalRef = this.modalService.open(NgbdModalContent, ngbModalOptions); 

這裏是更新plunker

3
$modal.open({ 
    // ... other options 
    backdrop : 'static', 
    keyboard : false 
}); 

當你創建你的模式,你可以指定它的行爲:

+0

它是Angular2的代碼嗎?我不這麼認爲。我期待Angular2代碼。 –

+0

是的,這是_is_ Angular代碼(事實上它只是JavaScript作爲ng-bootstrap模式服務的選項只是一個對象文字)。作爲這個組件的作者,我也可以說這是一個正確的答案,應該被接受。好工作@anshuVersatile –

+0

我在這裏使用TypeScript和Angular2,而不是JavaScript。 –

相關問題