芝麻web文件管理V1.00
编辑当前文件:/home/rejoandoctor/www/node_modules/vue/src/core/instance/render-helpers/render-slot.ts
import { extend, warn, isObject, isFunction } from 'core/util/index' import VNode from 'core/vdom/vnode' /** * Runtime helper for rendering
*/ export function renderSlot( name: string, fallbackRender: ((() => Array
) | Array
) | null, props: Record
| null, bindObject: object | null ): Array
| null { const scopedSlotFn = this.$scopedSlots[name] let nodes if (scopedSlotFn) { // scoped slot props = props || {} if (bindObject) { if (__DEV__ && !isObject(bindObject)) { warn('slot v-bind without argument expects an Object', this) } props = extend(extend({}, bindObject), props) } nodes = scopedSlotFn(props) || (isFunction(fallbackRender) ? fallbackRender() : fallbackRender) } else { nodes = this.$slots[name] || (isFunction(fallbackRender) ? fallbackRender() : fallbackRender) } const target = props && props.slot if (target) { return this.$createElement('template', { slot: target }, nodes) } else { return nodes } }