function
getDomByFunctionComponent(vNode) {
let { type, props } = vNode;
let renderVNode = type(props);
if
(!renderVNode)
return
null
;
vNode.oldRenderVNode = renderVNode
let dom = createDOM(renderVNode)
vNode.dom = dom
return
dom;
}
function
getDomByClassComponent(vNode) {
let { type, props, ref } = vNode;
let instance =
new
type(props)
vNode.classInstance = instance
ref && (ref.current = instance);
let renderVNode = instance.render();
instance.oldVNode = renderVNode
if
(!renderVNode)
return
null
;
let dom = createDOM(renderVNode);
if
(instance.componentDidMount) instance.componentDidMount();
return
dom
}