UNPKG

vxe-gantt

Version:
42 lines (41 loc) 1.51 kB
import { h, inject, ref, onMounted, onUnmounted } from 'vue'; import { defineVxeComponent } from '../../ui/src/comp'; const sourceType = 'gantt'; const viewType = 'footer'; export default defineVxeComponent({ name: 'VxeGanttViewFooter', setup() { const $xeGantt = inject('$xeGantt', {}); const $xeGanttView = inject('$xeGanttView', {}); const { internalData } = $xeGanttView; const refElem = ref(); const refHeaderScroll = ref(); const renderVN = () => { return h('div', { ref: refElem, class: 'vxe-gantt-view--footer-wrapper', onContextmenu(evnt) { $xeGantt.handleTaskFooterContextmenuEvent(evnt, { source: sourceType, type: viewType, $rowIndex: -1 }); } }, [ h('div', { ref: refHeaderScroll, class: 'vxe-gantt-view--footer-inner-wrapper' }) ]); }; onMounted(() => { const { elemStore } = internalData; const prefix = 'main-footer-'; elemStore[`${prefix}wrapper`] = refElem; elemStore[`${prefix}scroll`] = refHeaderScroll; }); onUnmounted(() => { const { elemStore } = internalData; const prefix = 'main-footer-'; elemStore[`${prefix}wrapper`] = null; elemStore[`${prefix}scroll`] = null; }); return renderVN; } });