UNPKG

shu-c-view

Version:

rollup 打包vue@2.7组件库框架

40 lines (38 loc) 1.12 kB
/** * @desc 渲染组件自身-比如有些情况下只要渲染一个文字的节点但增加一个 span 标签又显得有些多余了,这样可以使用这个组件来渲染传入的内容自身 */ import _isArray from 'lodash/isArray'; import _isEmpty from 'lodash/isEmpty'; import { devConsole } from '../helper/util.js'; const BaseRenderSelf = { name: 'BaseRenderSelf', props: { self: { type: [Number, String, Object] } }, render(h) { return h( { render() { return this.$scopedSlots.default(); } }, { scopedSlots: { default: () => this.self } }, [] ); } }; BaseRenderSelf.install = function(Vue, ElComponents) { // 用于按需加载的时候独立使用 devConsole(`按需加载独立组件:${BaseRenderSelf.name}`); if (_isArray(ElComponents) && !_isEmpty(ElComponents)) { for (let i = 0; i < ElComponents.length; i++) { if (ElComponents[i].name !== BaseRenderSelf.name) { Vue.use(ElComponents[i]); } } } Vue.component(BaseRenderSelf.name, BaseRenderSelf); }; export { BaseRenderSelf };