Angular : Modal(ui.bootstrap.modal)的使用

最近發(fā)現(xiàn)網(wǎng)上對Angular的Modal講解都比較籠統(tǒng),所以參考官方文檔進行一下翻譯、整理,官方文檔見:

Modal(ui.bootstrap.modal)

$uibModal是一個用來創(chuàng)建模態(tài)框的service,模態(tài)框的創(chuàng)建步驟如下:

  1. 創(chuàng)建模板(create a template)
  2. 為它聲明一個Controller

$uibModal只有一個方法:open(options),所有的配置都通過options傳給它

options相關參數(shù)如下:

參數(shù) 類型 默認值 含義
animation boolean true 顯示模態(tài)框是否帶動畫效果
appendTo angular.element body 添加到什么元素中
ariaDescribedBy string 指定模態(tài)框的內(nèi)容的編號,如div的id
ariaLabelledBy string 指定模態(tài)框的標題的編號,如div的id
backdrop boolean [豎線] string true 彈出模態(tài)框時,背景是否置灰,除了true/false外,還可以指定為'static',即點擊背景不能關閉模態(tài)框(默認是可以的),示例:backdrop: false [豎線] 'static'
backdropClass string 為模態(tài)框的backdrop添加額外的css效果
bindToController boolean false 當設置了controllerAs屬性且設置bindToController為true時,會自動為controller注入$scope
component string 指定通過某個組件渲染,如果使用一個自定義組件(directive),組件必須指定restrict:'E' 且指定了template和templateUrl兩個屬性,支持如下的綁定:close 關閉模態(tài)框的方法,結果格式為{$value: myResult} ; dismiss 隱藏模態(tài)框,結果格式為: {$value: myRejectedResult} ; modalInstance 模態(tài)框的實例,與 $uibModalInstance 等同 ,當使用controller屬性時,可向其注入
controller funcation[豎線]string[豎線]array 為模態(tài)框指定一個Controller,既可以使用controller的名字,也可以直接指定處理方法,還可以通過array指定依賴的注入,controller內(nèi),可通過注入的$uibModalInstance 訪問模態(tài)框的內(nèi)容
controllerAs string 一個可選的controller語法,使用時需要指定controller屬性
keyboard boolean true 按ESC按鈕時,是否關閉模態(tài)框
openedClass string 當模態(tài)框打開時,動態(tài)添加給body的樣式
resolve Object 用于傳值
scope $scope 父級的 scope實例
size string 模態(tài)框的大小, sm、lg或不填
template string 模態(tài)框的模板
templateUrl string 模態(tài)框的模板鏈接,與template必須選擇一個
windowClass string 為窗口添加額外的樣式
windowTemplateUrl string uib/template/modal/window.html 可通過指定這個屬性重寫窗口的樣式
windowTopClass string 為最上層的窗口添加額外的樣式

可通過 $uibModalProvider.options$uibModal 設置全局屬性

返回值

open方法會返回一個模態(tài)框的實例,帶有下面的屬性

名稱 類型 含義
close(result) funcation 關閉模態(tài)框,并傳入結果
dismiss(reason) funcation 隱藏模態(tài)框,并傳入原因
result promise 模態(tài)框已關閉
opened promise 模態(tài)框已打開,并加載完模板跟值
closed promise 模態(tài)框已關閉,且動畫結束
rendered promise 模態(tài)框已渲染
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,366評論 25 708
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,715評論 19 139
  • 前言的前言 唐巧前輩在微信公眾號「iOSDevTips」以及其博客上推送了我的文章后,我的 Github 各項指標...
    VincentHK閱讀 5,581評論 3 44
  • 第一次免費試用領取成功 必須要記錄一下 慶祝一番
    PWong閱讀 231評論 0 0
  • 我的忠實粉絲,嚷嚷著你為什么不更新了,是啊,何止不更新,還沒有再寫日記了,有時候在簡書上寫,有時候在日記上寫,有時...
    覃格爾閱讀 447評論 2 0

友情鏈接更多精彩內(nèi)容