@chief-editor/ui
Version:
UI Component for chief editor
1 lines • 905 B
JavaScript
var __rest=this&&this.__rest||function(e,t){var r={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(s=Object.getOwnPropertySymbols(e);n<s.length;n++)t.indexOf(s[n])<0&&Object.prototype.propertyIsEnumerable.call(e,s[n])&&(r[s[n]]=e[s[n]])}return r};import{classnames}from"@co-hooks/util";import Handsontable from"handsontable";import React,{useEffect,useRef,useState}from"react";import{usePrefixCls}from"../../hooks/usePrefixCls";export function HandsonTable(e){var t=e.className,r=e.style,s=__rest(e,["className","style"]),n=useRef(null),o=useState(),a=o[0],l=o[1],f=classnames(usePrefixCls("handsontable"),t);return useEffect((function(){var e=n.current;if(e&&!a){var t=new Handsontable(e,s);l(t)}return function(){a&&a.destroy()}}),[]),React.createElement("div",{ref:n,className:f,style:r})}