首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏与前端沾边

    mini react-window(一) 实现固定高度虚拟滚动

    但是如果内容越来越多会引起大量重排和重绘虚拟列表,可视区域有限,看到的数据有限,在用户滚动时,指渲染可是区域内的内容即可,dom 少,渲染少在 github 上也有很多针对 react 的虚拟滚动的库,我们这里对 react-window 实现固定渲染虚拟滚动创建自己实现组件的目录// src/react-window/index.jsexport {default as FixedSizeList} from '. /FixedSizeList'// src/react-window/FixedSizeList.jsimport createListComponet from '. FixedSizeList = createLstComponent({})export default FixedSizeList实现 FixedSizeList 组件时我们要注意我们没有直接写, react-window // src/react-window/createListComponent.jsimport React from 'react'function createListComponet({}) {

    2.7K51编辑于 2022-09-25
  • 来自专栏与前端沾边

    mini react-window(二) 实现可知变化高度虚拟列表

    图片react-window 库实现效果// src/variable-size-list.js// 固定高度列表import { VariableSizeList } from "react-window

    2.1K40编辑于 2022-10-20
  • 来自专栏前端开发

    分享一些React虚拟列表的实现方法

    使用成熟的第三方库对于复杂场景,推荐使用经过优化的成熟库:react-window轻量级虚拟列表库,专注于性能和简单API。 import { FixedSizeList as List } from 'react-window';const ReactWindowList = ({ items }) => { const 选择建议简单固定高度列表:基础手动实现或 react-window动态高度列表:动态高度实现或 react-virtualized复杂场景(网格、表格):react-virtualized 或 react-window

    63310编辑于 2025-08-14
  • 来自专栏linux运维

    协作场景:用AI调试一个React前端性能问题

    还建议用虚拟化库如react-window。我试了下,效果炸裂。关键步骤问题定位:用Cursor建议的DevToolsPerformance面板,确认列表渲染是瓶颈,耗时200ms+。 虚拟化尝试:用react-window实现虚拟列表,只渲染可见项:import{FixedSizeList}from'react-window';constList=({items})=>{constRow

    27710编辑于 2025-08-31
  • React虚拟列表在移动端的优化方法与实现指南

    主流实现方案对比在React生态中,实现虚拟列表主要有三种方案:手动实现、react-virtualized和react-windowreact-window则是更轻量的替代方案,专注于列表和表格虚拟化,打包体积更小,更适合移动端使用。 第三方库的移动端适配推荐使用对移动端优化较好的虚拟列表库,并进行针对性配置:react-window 移动端配置:import { FixedSizeList } from 'react-window'

    58510编辑于 2025-08-15
  • 来自专栏前端开发

    React虚拟列表在移动端的优化方法有哪些?

    第三方库的移动端适配推荐使用对移动端优化较好的虚拟列表库,并进行针对性配置:react-window 移动端配置:import { FixedSizeList } from 'react-window' 根据屏幕动态调整可视区域和渲染数量触摸优化:使用passive事件、防抖处理、硬件加速滚动渲染优化:固定尺寸、减少布局偏移、启用CSS containment数据优化:预加载、懒加载、控制单次加载量库选型:优先选择轻量库(如react-window

    32610编辑于 2025-08-14
  • 来自专栏软件安装

    除了useMemo和useCallback,还有哪些性能优化技巧?

    常用库:react-window、react-virtualized。 import { FixedSizeList } from 'react-window'; const LongList = ({ items }) => ( <FixedSizeList

    19010编辑于 2025-11-12
  • 来自专栏新零售项目实践

    供应链可视化开发实战 | 性能优化:百万级供应链数据的前端渲染策略

    实现方案:使用react-windowreact-window是React生态中高效、易用的虚拟化库。 //1.安装:npminstallreact-windowimportReactfrom'react';import{FixedSizeListasList}from'react-window';//2 Row组件:接收index(数据索引)和style(由react-window计算出的绝对定位样式,控制行的位置)。关键点:只有当前在可视窗内的index对应的Row才会被渲染。 第二层(渲染):对列表/表格引入虚拟滚动(react-window),对复杂图表使用Canvas(ECharts/D3)。第三层(计算):将复杂计算(排序、过滤、搜索)移至WebWorker。

    13320编辑于 2026-04-04
  • 来自专栏Web前端

    React 表格组件设计

    2.2 如何避免错误使用成熟的库:使用如 react-window 或 react-virtualized 等成熟的虚拟滚动库。合理设置滚动条:确保滚动条的平滑性和响应性,避免卡顿。 2.3 代码示例import React from 'react';import { FixedSizeList as List } from 'react-window';import '.

    1.4K10编辑于 2024-11-13
  • 前端package.json文件详解

     "^3.34.16",     "react-virtualized": "^9.22.3",     "react-virtualized-auto-sizer": "^1.0.6",     "react-window     "@types/react-image-gallery": "^1.0.4",     "@types/react-test-renderer": "^17.0.1",     "@types/react-window - `react-window`: 用于高效渲染大型列表和表格的 React 组件库。 - `reselect`: 用于创建可记忆的、可组合的选择器的库。 - "@types/react-window": "^1.8.5":这个库提供了用于类型定义的react-window库。它是一个用于渲染大型列表和表格的高性能React组件库。  

    1.3K10编辑于 2025-04-05
  • 来自专栏前端达人

    [ChatGPT 高级进阶系列] 用ChatGPT加速前端开发:高级思维链提示全解析

    执行最佳策略: 请针对虚拟列表方案,使用 react-window 提供具体详细的代码实现。 5. 回顾与学习: 请分析虚拟列表方案的优缺点,指出可能存在的局限性,并给出改进或扩展建议。 最佳策略代码实现(虚拟列表方案): import React from'react'; import { FixedSizeList as List } from'react-window'; const

    31010编辑于 2025-03-24
  • 来自专栏Web前端

    📝  《React性能优化完全手册:从useMemo到并发模式》

    ──┘│ 渲染项3 │ ▲ 动态计算渲染范围└─────────┘ ▼ 回收不可见节点主流库性能对比:库名 最大节点数支持动态高度支持兼容性 react-window 需手动计算 React 16+react-virtualized50万+ 内置算法 需兼容层 @tanstack/virtual100万+ 自动测量 React 18+// 使用react-window 实现虚拟列表import { FixedSizeList } from 'react-window';const Row = ({ index, style }) => ( <div style={style

    1.3K20编辑于 2025-04-28
  • 来自专栏前端开发

    前端工程师必知的 MCP 秘籍 包含渲染优化与性能提升等长尾知识要点

    requestIdleCallback(processChunk); } } requestIdleCallback(processChunk); }(二)优化框架渲染虚拟列表 // 使用react-window 实现虚拟列表 import { FixedSizeList } from 'react-window'; const Row = ({ index, style }) => ( <div

    1.3K00编辑于 2025-05-28
  • 来自专栏不换的随想乐园

    移动端「上滑-加载更多」原理浅析

    留言区」留言奥~ 小结 文中我仅仅罗列了一个核心函数 watchSentry,里面做了三件事: • 浏览器兼容 • 监听哨兵(容错) • 适当时机释放 优化的空间 当然,还有很多优化的空间: • 借助 react-window

    85810编辑于 2024-04-30
  • 来自专栏小鑫同学编程历险记

    实操图片流页面体验优化

    内容项两部分组成: MasonryLayout 容器: 利用 ResizeObserver API 监听容器尺寸的变化,根据内容项预设的尺寸计算 columnCount 和 rowCount 两个属性,其中容器由 react-window /div> ); }; CardCell 内容项: 这个 Card 组件就是源代码中主要的显示区域,直接当做 CardCell 会发现丢失了每行和没列之间的间距,通过网页审查元素可以看到使用 react-window

    81410编辑于 2024-08-21
  • 来自专栏WebJ2EE

    React 性能调优——PureComponent 篇

    TodoApp-v4(ReSelect 优化) 可以使用 reselect 给这种操作 加缓存 后记 其实,TodoApp 性能的最大优化方式 是使用 react-window 类技术 优化长列表数据的展示

    1.1K20发布于 2019-07-19
  • 来自专栏前端技术江湖

    虚拟滚动的 3 种实现方式!

    前言 工作中一直有接触大量数据渲染的业务,使用react-window多之又多,所以对虚拟列表有了些浅显的理解。今天,我们就照着react-window的使用方式来实现三种虚拟列表。 {getCurrentChildren()}

    ); }; export default VariableSizeList; 结果 结尾 react-window

3.1K10编辑于 2023-09-11
  • 来自专栏全栈前端精选

    拯救你的年底 KPI:前端性能优化

    就能实现的骨架屏方案 等等 七、窗口化 原理:只加载当前窗口能显示的DOM元素,当视图变化时,删除隐藏的,添加要显示的DOM就可以保证页面上存在的dom元素数量永远不多,页面就不会卡顿 图中使用的插件:react-window 安装:npm i react-window 引入:import { FixedSizeList as List } from 'react-window'; 使用: const Row = ({ index

    1.3K10发布于 2021-01-13
  • 来自专栏前端知识开放麦

    前端性能优化实用方案(五):Vue和React的渲染性能优化

    react-window是个不错的选择,它只渲染可见区域的元素。 components/VirtualizedList.jsximport { FixedSizeList as List } from 'react-window';import { lazy, Suspense

    41320编辑于 2025-09-23
  • React 2025 完全指南:核心原理、实战技巧与性能优化

    自定义对比逻辑,灵活控制渲染 拆分 Context 多状态共享场景 避免一个状态变导致所有组件重渲染 3.1.2 列表渲染优化 长列表(100 + 项)的优化方案对比,结合示意图理解原理: 推荐用react-window 实现虚拟列表,示例: import { FixedSizeList as List } from 'react-window'; const UserList = ({ users }) => (

    53310编辑于 2025-12-15
  • 领券