diff --git a/src/client/app/desktop/script.ts b/src/client/app/desktop/script.ts index 10b929ff3f..845f8ee5c0 100644 --- a/src/client/app/desktop/script.ts +++ b/src/client/app/desktop/script.ts @@ -60,7 +60,7 @@ init(async (launch, os) => { }); if (o.cb) vm.$once('closed', o.cb); } else { - this.$root.new(() => import('./views/components/post-form-window.vue').then(m => m.default), { + this.$root.newAsync(() => import('./views/components/post-form-window.vue').then(m => m.default), { reply: o.reply, mention: o.mention, animation: o.animation == null ? true : o.animation diff --git a/src/client/app/init.ts b/src/client/app/init.ts index 6d95f61e65..da7baff4fe 100644 --- a/src/client/app/init.ts +++ b/src/client/app/init.ts @@ -449,25 +449,24 @@ export default (callback: (launch: (router: VueRouter) => [Vue, MiOS], os: MiOS) getMetaSync: os.getMetaSync, signout: os.signout, new(vm, props) { - if (typeof vm === 'function') { - return new Promise((res) => { - vm().then(vm => { - const x = new vm({ - parent: this, - propsData: props - }).$mount(); - document.body.appendChild(x.$el); - res(x); - }); + const x = new vm({ + parent: this, + propsData: props + }).$mount(); + document.body.appendChild(x.$el); + return x; + }, + newAsync(vm, props) { + return new Promise((res) => { + vm().then(vm => { + const x = new vm({ + parent: this, + propsData: props + }).$mount(); + document.body.appendChild(x.$el); + res(x); }); - } else { - const x = new vm({ - parent: this, - propsData: props - }).$mount(); - document.body.appendChild(x.$el); - return x; - } + }); }, dialog(opts) { const vm = this.new(Dialog, opts); diff --git a/src/client/app/mobile/script.ts b/src/client/app/mobile/script.ts index 24453bd26c..d33bafbb0f 100644 --- a/src/client/app/mobile/script.ts +++ b/src/client/app/mobile/script.ts @@ -50,7 +50,7 @@ init((launch, os) => { document.documentElement.style.overflow = 'auto'; } - this.$root.new(() => import('./views/components/post-form-dialog.vue').then(m => m.default), { + this.$root.newAsync(() => import('./views/components/post-form-dialog.vue').then(m => m.default), { reply: o.reply, mention: o.mention, renote: o.renote