MCPcopy Create free account
hub / github.com/TruthHun/BookStack / renderMixin

Function renderMixin

static/vuejs/vue.common.js:3579–3656  ·  view source on GitHub ↗
(Vue)

Source from the content-addressed store, hash-verified

3577}
3578
3579function renderMixin (Vue) {
3580 Vue.prototype.$nextTick = function (fn) {
3581 return nextTick(fn, this)
3582 };
3583
3584 Vue.prototype._render = function () {
3585 var vm = this;
3586 var ref = vm.$options;
3587 var render = ref.render;
3588 var staticRenderFns = ref.staticRenderFns;
3589 var _parentVnode = ref._parentVnode;
3590
3591 if (vm._isMounted) {
3592 // clone slot nodes on re-renders
3593 for (var key in vm.$slots) {
3594 vm.$slots[key] = cloneVNodes(vm.$slots[key]);
3595 }
3596 }
3597
3598 vm.$scopedSlots = (_parentVnode && _parentVnode.data.scopedSlots) || emptyObject;
3599
3600 if (staticRenderFns && !vm._staticTrees) {
3601 vm._staticTrees = [];
3602 }
3603 // set parent vnode. this allows render functions to have access
3604 // to the data on the placeholder node.
3605 vm.$vnode = _parentVnode;
3606 // render self
3607 var vnode;
3608 try {
3609 vnode = render.call(vm._renderProxy, vm.$createElement);
3610 } catch (e) {
3611 handleError(e, vm, "render function");
3612 // return error render result,
3613 // or previous vnode to prevent render error causing blank component
3614 /* istanbul ignore else */
3615 if (process.env.NODE_ENV !== 'production') {
3616 vnode = vm.$options.renderError
3617 ? vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e)
3618 : vm._vnode;
3619 } else {
3620 vnode = vm._vnode;
3621 }
3622 }
3623 // return empty vnode in case the render function errored out
3624 if (!(vnode instanceof VNode)) {
3625 if (process.env.NODE_ENV !== 'production' && Array.isArray(vnode)) {
3626 warn(
3627 'Multiple root nodes returned from render function. Render function ' +
3628 'should return a single root node.',
3629 vm
3630 );
3631 }
3632 vnode = createEmptyVNode();
3633 }
3634 // set parent
3635 vnode.parent = _parentVnode;
3636 return vnode

Callers 1

vue.common.jsFile · 0.70

Calls 5

cloneVNodesFunction · 0.70
handleErrorFunction · 0.70
createEmptyVNodeFunction · 0.70
nextTickFunction · 0.50
warnFunction · 0.50

Tested by

no test coverage detected