如何避免从react小部件重新渲染react DropdownList

How to avoid re-rendering react DropdownList from react-widgets

本文关键字:react 新渲染 DropdownList 小部 何避免      更新时间:2023-09-26

我使用react-widgets中的下拉列表从json文件中创建下拉菜单(lang具有值)。这是代码:

        <DropdownList 
            ref='dropdown'
            data={lang} 
            valueField='id'
            textField={item => item.name}
            caseSensitive={false} 
            filter='contains'
            value={this.state.value}
            onChange={this.handleLangChange} />

问题是名单太多了!!!因此渲染需要时间,当用户想要选择一个项目时,他必须等待几秒钟。有人知道我怎样才能更快吗?似乎每次更新搜索输入时都会呈现DropdownList组件:/

看看React生命周期shouldComponentUpdate()方法。它负责通知React是否应该重新渲染组件。只有在修改下拉元素时,才能强制重新呈现。

不确定您通过React Widgets有多少访问权限。但您显然可以在DropDownList周围创建一个包装组件,以访问属性和shouldComponentUpdate。只是一个想法