UNPKG

mount-vue-component

Version:

a tiny utility to programatically create and mount Vue 3 components - e.g. a Vue.extend replacement

25 lines (17 loc) 605 B
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var vue = require('vue'); function mount(component, { props, children, element, app } = {}) { let el = element; let vNode = vue.createVNode(component, props, children); if (app && app._context) vNode.appContext = app._context; if (el) vue.render(vNode, el); else if (typeof document !== 'undefined' ) vue.render(vNode, el = document.createElement('div')); const destroy = () => { if (el) vue.render(null, el); el = null; vNode = null; }; return { vNode, destroy, el } } exports.mount = mount;