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