| 3089 | } |
| 3090 | |
| 3091 | function createComponentInstanceForVnode ( |
| 3092 | vnode, // we know it's MountedComponentVNode but flow doesn't |
| 3093 | parent, // activeInstance in lifecycle state |
| 3094 | parentElm, |
| 3095 | refElm |
| 3096 | ) { |
| 3097 | var vnodeComponentOptions = vnode.componentOptions; |
| 3098 | var options = { |
| 3099 | _isComponent: true, |
| 3100 | parent: parent, |
| 3101 | propsData: vnodeComponentOptions.propsData, |
| 3102 | _componentTag: vnodeComponentOptions.tag, |
| 3103 | _parentVnode: vnode, |
| 3104 | _parentListeners: vnodeComponentOptions.listeners, |
| 3105 | _renderChildren: vnodeComponentOptions.children, |
| 3106 | _parentElm: parentElm || null, |
| 3107 | _refElm: refElm || null |
| 3108 | }; |
| 3109 | // check inline-template render functions |
| 3110 | var inlineTemplate = vnode.data.inlineTemplate; |
| 3111 | if (inlineTemplate) { |
| 3112 | options.render = inlineTemplate.render; |
| 3113 | options.staticRenderFns = inlineTemplate.staticRenderFns; |
| 3114 | } |
| 3115 | return new vnodeComponentOptions.Ctor(options) |
| 3116 | } |
| 3117 | |
| 3118 | function resolveAsyncComponent ( |
| 3119 | factory, |