UNPKG

ui-template-muc

Version:

A fantastic mobile ui lib implement by Vue

28 lines (27 loc) 891 B
import parseRenderData from './parse-render.js' import getInstance from './instantiate-component.js' export default function create (Component, Vue) { return function (config, renderFn) { const owner = this const parseData = parseRenderData(config) const instance = getInstance(Vue, Component, parseData, renderFn) const parent = instance.$parent const originRemove = instance.remove const originShow = instance.show const originHide = instance.hide instance.remove = function () { originRemove && originRemove.call(this) parent.destroy() } instance.show = function () { originShow && originShow.call(this) } instance.hide = function () { originHide && originHide.call(this) } owner.$once('hook:beforeDestroy', function () { instance.remove() }) return instance } }