UNPKG

@huantv/vue

Version:
42 lines (37 loc) 1.02 kB
/* eslint-disable import/prefer-default-export */ /* eslint-disable no-underscore-dangle */ /* eslint-disable no-param-reassign */ // TODO: Transition support. function toggle(el, value, vNode, originalDisplay) { if (value) { vNode.data.show = true; el.setStyle('display', originalDisplay); } else { el.setStyle('display', 'none'); } } const show = { bind(el, { value }, vNode) { // Set the display be block when undefined if (el.style.display === undefined) { el.style.display = 'block'; } const originalDisplay = el.style.display === 'none' ? '' : el.style.display; el.__vOriginalDisplay = originalDisplay; toggle(el, value, vNode, originalDisplay); }, update(el, { value, oldValue }, vNode) { if (!value === !oldValue) { return; } toggle(el, value, vNode, el.__vOriginalDisplay); }, unbind(el, binding, vNode, oldVNode, isDestroy) { if (!isDestroy) { el.style.display = el.__vOriginalDisplay; } }, }; export { show, };