helper.js 505 Bytes
Newer Older
wanli's avatar
wanli committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
import Vue from 'vue'
import store from './store'
import router from './router'

export const transfer = component => {
    const _constructor = Vue.extend(component)
    return function (propsData = {}) {
        let instance = new _constructor({ store, router, propsData }).$mount(document.createElement('div'))

        return new Promise((resolve, reject) => {
            instance.$once('completed', data => resolve(data))
            instance.$once('cancel', data => reject(data))
        })
    }
}