bootstrap-vue
Version:
With more than 85 components, over 45 available plugins, several directives, and 1000+ icons, BootstrapVue provides one of the most comprehensive implementations of the Bootstrap v4 component and grid system available for Vue.js v2.6, complete with extens
21 lines (19 loc) • 835 B
JavaScript
import { SLOT_NAME_DEFAULT } from '../constants/slot-names'
import { hasNormalizedSlot, normalizeSlot } from '../utils/normalize-slot'
import { concat } from '../utils/array'
export default {
methods: {
hasNormalizedSlot(name = SLOT_NAME_DEFAULT) {
// Returns true if the either a $scopedSlot or $slot exists with the specified name
// `name` can be a string name or an array of names
return hasNormalizedSlot(name, this.$scopedSlots, this.$slots)
},
normalizeSlot(name = SLOT_NAME_DEFAULT, scope = {}) {
// Returns an array of rendered VNodes if slot found.
// Returns undefined if not found.
// `name` can be a string name or an array of names
const vNodes = normalizeSlot(name, scope, this.$scopedSlots, this.$slots)
return vNodes ? concat(vNodes) : vNodes
}
}
}