由于useLayoutEffect钩子是在dom获得后、渲染组件前。因此,如果在useLayoutEffect中设置一些长耗时的,或者死循环之类的任务,会导致内存堆栈溢出。这时候需要转用useEffect。
// 适配全局宽度拉动变化时,legend显示数量React.useEffect(() => {const onResize = debounce(() => {let totalWidth = 0;const els = itemWrapRef.current;const spaceEl = spaceWrapRef.current;const { length } = options;let maxNum: number = length;let _noFullOpts = [...options];let isShow = false;els.forEach((el: any, index: number) => {// 累计宽度是否大于容器宽度,为了计算最大容个数if (el?.offsetWidth && spaceEl?.clientWidth) {const flag = totalWidth + el?.offsetWidth > spaceEl?.clientWidth;// console.log('width===>', spaceEl.clientWidth, totalWidth, flag);if (!flag) {maxNum = index + 1;totalWidth += el?.offsetWidth;isShow = false;} else {isShow = true;}if (length > 1) {_noFullOpts = options.slice(0, maxNum);}}});setIsShowMore(isShow);setNoFullOpts([..._noFullOpts]);}, 50);onResize();window.addEventListener('resize', onResize);return () => {window.removeEventListener('resize', onResize);};}, [options]);
当前位置:首页
>> 核电技术聚变聚能设备 >> 【react】慎用useLayoutEffect转而使用useEffect,夏普gx32(夏普r ufs)
【react】慎用useLayoutEffect转而使用useEffect,夏普gx32(夏普r ufs)
cpugpu芯片开发光刻机
核电技术聚变聚能设备
5
文件名:【react】慎用useLayoutEffect转而使用useEffect,夏普gx32
【react】慎用useLayoutEffect转而使用useEffect
同类推荐
-

核电聚能设备的市场竞争格局如何?(核电站核聚变可控吗)
查看 -

四代核电技术相比三代有哪些优势?(四代核电技术相比三代有哪些优势呢)
查看 -
四代核电技术何时能商业化?(四代核电技术何时能商业化呢)
查看 -
钍基熔盐堆的技术难点有哪些?(钍基熔盐堆的技术难点有哪些)
查看 -

【RS码1】系统RS码编码原理及MATLAB实现(不使用MATLAB库函数),飞利浦x530
查看 -

【RTP】RTPSenderAudio--SendAudio,雷柏e6300(雷柏e6350)
查看 -

【RabbitMQ】golang客户端教程5——使用topic交换器,索爱k810i
查看 -

【Rabbitmq】报错:ERROR CachingConnectionFactory Channel shutdown- channel error;,佳能单反450d
查看 -

【React】useReducer,艾诺mp4官网(艾诺mp4价格)
查看