diff options
| author | taehoon <th.dev91@gmail.com> | 2019-10-18 11:53:38 -0400 |
|---|---|---|
| committer | taehoon <th.dev91@gmail.com> | 2019-10-18 11:53:38 -0400 |
| commit | a41ffea146bf1a392de255f04bf64599de165269 (patch) | |
| tree | fa7ff5ad52ee3fce2288ba7498bc85f19e738f3e /src/components/modal/modal.vue | |
| parent | d502baaffc30d97a9c4f8f254bf1ff146844151b (diff) | |
render modals into the “modal” portal
Diffstat (limited to 'src/components/modal/modal.vue')
| -rw-r--r-- | src/components/modal/modal.vue | 28 |
1 files changed, 12 insertions, 16 deletions
diff --git a/src/components/modal/modal.vue b/src/components/modal/modal.vue index 8edfbd45..e5831c47 100644 --- a/src/components/modal/modal.vue +++ b/src/components/modal/modal.vue @@ -1,22 +1,18 @@ <template> - <div - v-body-scroll-lock="true" - class="modal-view" - @click.self="closeModal" - > - <slot /> - </div> + <portal to="modal"> + <div + ref="view" + v-body-scroll-lock="isOpen" + v-show="isOpen" + :class="['modal-view', viewClass]" + @click.self="closeModal" + > + <slot /> + </div> + </portal> </template> -<script> -export default { - methods: { - closeModal () { - this.$emit('close') - } - } -} -</script> +<script src="./modal.js"></script> <style lang="scss"> .modal-view { |
