This commit is contained in:
syuilo 2020-09-06 21:04:46 +09:00
parent 7f01aad576
commit 8f2dd47b4a
3 changed files with 15 additions and 3 deletions

View File

@ -1,6 +1,6 @@
<template> <template>
<div class="ulveipgl" :style="{ pointerEvents: closing ? 'none' : 'auto' }"> <div class="ulveipgl" :style="{ pointerEvents: closing ? 'none' : 'auto' }">
<transition :name="$store.state.device.animation ? 'form-fade' : ''" appear @after-leave="$store.commit('setPostForm', null)"> <transition :name="$store.state.device.animation ? 'form-fade' : ''" appear @after-leave="destroy">
<div class="bg _modalBg" ref="bg" v-if="!closing" @click="close()"></div> <div class="bg _modalBg" ref="bg" v-if="!closing" @click="close()"></div>
</transition> </transition>
<div class="main" ref="main" @click.self="close()" @keydown="onKeydown"> <div class="main" ref="main" @click.self="close()" @keydown="onKeydown">
@ -36,6 +36,12 @@ export default defineComponent({
}, },
props: { props: {
destroy: {
required: true
},
emit: {
required: true
},
reply: { reply: {
type: Object, type: Object,
required: false required: false

View File

@ -296,7 +296,7 @@ export default defineComponent({
}, },
post() { post() {
this.$store.commit('setPostForm', {}); os.post();
}, },
search() { search() {

View File

@ -73,7 +73,13 @@ export function dialog(props: Record<string, any>) {
export function menu(props: Record<string, any>) { export function menu(props: Record<string, any>) {
return new Promise((res, rej) => { return new Promise((res, rej) => {
return popup(defineAsyncComponent(() => import('@/components/menu.vue')), props, res); popup(defineAsyncComponent(() => import('@/components/menu.vue')), props, res);
});
}
export function post(props: Record<string, any>) {
return new Promise((res, rej) => {
popup(defineAsyncComponent(() => import('@/components/post-form-dialog.vue')), props, res);
}); });
} }