vue如何创建实例

133 阅读1分钟

方法一(借鸡生蛋)

const vm = new Vue({
    render(h) {
        return h(Component, {props})
    }
}).$mount();  // $mount() 本质上是将 vdom -> dom

// 通过 vm.$el 获取生成的 dom
document.body.appendChild(vm.$el);

方法二(使用Vue.extend)

使用基础 Vue 构造器,创建一个“子类”。参数是一个包含组件选项的对象。

const Ctor = Vue.extend(Component);
// 创建组件实例
const comp = new Ctor({ propsData: props });
// 挂载
comp.$mount();
document.body.appendChild(comp.$el);