MeasureCell.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import { createVNode as _createVNode, createTextVNode as _createTextVNode } from "vue";
  2. import { defineComponent, onMounted, ref } from 'vue';
  3. import VCResizeObserver from '../../vc-resize-observer';
  4. export default defineComponent({
  5. name: 'MeasureCell',
  6. props: ['columnKey'],
  7. setup: function setup(props, _ref) {
  8. var emit = _ref.emit;
  9. var tdRef = ref();
  10. onMounted(function () {
  11. if (tdRef.value) {
  12. emit('columnResize', props.columnKey, tdRef.value.offsetWidth);
  13. }
  14. });
  15. return function () {
  16. return _createVNode(VCResizeObserver, {
  17. "onResize": function onResize(_ref2) {
  18. var offsetWidth = _ref2.offsetWidth;
  19. emit('columnResize', props.columnKey, offsetWidth);
  20. }
  21. }, {
  22. default: function _default() {
  23. return [_createVNode("td", {
  24. "ref": tdRef,
  25. "style": {
  26. padding: 0,
  27. border: 0,
  28. height: 0
  29. }
  30. }, [_createVNode("div", {
  31. "style": {
  32. height: 0,
  33. overflow: 'hidden'
  34. }
  35. }, [_createTextVNode("\xA0")])])];
  36. }
  37. });
  38. };
  39. }
  40. });