现在已经获得了render函数后,需要把render函数变成vnode,之后将vnode生成真实dom
let render=compileToFunction(el)
//render
//(1)将render函数变成vnode即虚拟dom (2)将vnode变成真实dom放到页面上去
options.render=render
//虚拟dom
在源码中,通过_render将render函数变成虚拟dom
再通过_update将虚拟dom变成真实dom放到页面上去
export function mountComponent(vm,el){
//源码中
vm._update(vm._render)
//1.vm._render将render函数变成虚拟dom vnode
//2.vm._update将vnode变成真实dom再放到页面上去
}
所以需要对vue添加原型方法
export function renderMinxin(Vue){
Vue.prototype._render=function(){
}
}
export function lifecycleMixin(Vue){
Vue.prototype._update=function(vode){
//将虚拟dom变成真实dom放到页面上
}
}
可以试着先打印一下
export function renderMinxin(Vue){
Vue.prototype._render