Commit abb2cae6dae0b31b2dee64f6d36aa58facd5d81b
Committed by
GitHub
Merge pull request #2568 from lison16/modal
add closable props for $Modal https://github.com/iview/iview/issues/2362
Showing
2 changed files
with
16 additions
and
2 deletions
Show diff stats
examples/routers/modal.vue
@@ -18,6 +18,7 @@ | @@ -18,6 +18,7 @@ | ||
18 | <i-option v-for="item in options" :value="item.value" :key="item.value">{{ item.label }}</i-option> | 18 | <i-option v-for="item in options" :value="item.value" :key="item.value">{{ item.label }}</i-option> |
19 | </i-select> | 19 | </i-select> |
20 | </Modal> | 20 | </Modal> |
21 | + <Button @click="showModelFunc">弹出</Button> | ||
21 | </div> | 22 | </div> |
22 | </template> | 23 | </template> |
23 | <script> | 24 | <script> |
@@ -123,6 +124,13 @@ | @@ -123,6 +124,13 @@ | ||
123 | item.loading = false; | 124 | item.loading = false; |
124 | callback(); | 125 | callback(); |
125 | }, 1000); | 126 | }, 1000); |
127 | + }, | ||
128 | + showModelFunc () { | ||
129 | + this.$Modal.success({ | ||
130 | + title: 'haha', | ||
131 | + content: 'lsisdfsdfsdfs', | ||
132 | + closable: false | ||
133 | + }); | ||
126 | } | 134 | } |
127 | } | 135 | } |
128 | } | 136 | } |
src/components/modal/confirm.js
@@ -22,7 +22,8 @@ Modal.newInstance = properties => { | @@ -22,7 +22,8 @@ Modal.newInstance = properties => { | ||
22 | showCancel: false, | 22 | showCancel: false, |
23 | loading: false, | 23 | loading: false, |
24 | buttonLoading: false, | 24 | buttonLoading: false, |
25 | - scrollable: false | 25 | + scrollable: false, |
26 | + closable: true | ||
26 | }), | 27 | }), |
27 | render (h) { | 28 | render (h) { |
28 | let footerVNodes = []; | 29 | let footerVNodes = []; |
@@ -80,7 +81,8 @@ Modal.newInstance = properties => { | @@ -80,7 +81,8 @@ Modal.newInstance = properties => { | ||
80 | return h(Modal, { | 81 | return h(Modal, { |
81 | props: Object.assign({}, _props, { | 82 | props: Object.assign({}, _props, { |
82 | width: this.width, | 83 | width: this.width, |
83 | - scrollable: this.scrollable | 84 | + scrollable: this.scrollable, |
85 | + closable: this.closable | ||
84 | }), | 86 | }), |
85 | domProps: { | 87 | domProps: { |
86 | value: this.visible | 88 | value: this.visible |
@@ -210,6 +212,10 @@ Modal.newInstance = properties => { | @@ -210,6 +212,10 @@ Modal.newInstance = properties => { | ||
210 | modal.$parent.width = props.width; | 212 | modal.$parent.width = props.width; |
211 | } | 213 | } |
212 | 214 | ||
215 | + if ('closable' in props) { | ||
216 | + modal.$parent.closable = props.closable; | ||
217 | + } | ||
218 | + | ||
213 | if ('title' in props) { | 219 | if ('title' in props) { |
214 | modal.$parent.title = props.title; | 220 | modal.$parent.title = props.title; |
215 | } | 221 | } |