ReactJS Image 或其他类似组件重用图像位图
ReactJS Image or other similar component to reuse image bitmap
我在用ReactJS做一个聊天界面,聊天记录中的每一项都一遍又一遍地显示同一个头像图标。目前我面临的问题是,当新项目添加到聊天记录时,此图像在每个列表项目中闪烁,看起来不太像样。
我想知道是否有办法重用 Component
(很可能不是)或位图数据,以便一旦加载到内存中,就可以更快地显示而不会出现可察觉的闪烁。我试过使用数据 URL,但收效甚微。
根据评论中的请求进一步详细信息:
我有一个单独的 Component
来显示每个聊天记录项目。它包含一个 Image
组件来显示头像。
在顶部日志中,我使用 FlatList
,在 renderItem
中,我正在呈现上述聊天记录组件。每当发送或接收任何消息时,它都会附加到 FlatList
中的 data
指向的数组。
每当添加一个项目时,列表都会重新呈现,导致 Image
再次创建(我已经搜索过但没有找到将项目附加到 FlatList
的任何好处影响现有儿童)。因此,我认为解决方案在于使图像加载速度更快,这样重新渲染就不会那么明显。
我想到闪烁的一个原因是,如果您将列表项的 key
和 forcing
重新分配给 re-render。检查是否有这种情况。这是列表视图上 re-render 的主要原因之一。
我在用ReactJS做一个聊天界面,聊天记录中的每一项都一遍又一遍地显示同一个头像图标。目前我面临的问题是,当新项目添加到聊天记录时,此图像在每个列表项目中闪烁,看起来不太像样。
我想知道是否有办法重用 Component
(很可能不是)或位图数据,以便一旦加载到内存中,就可以更快地显示而不会出现可察觉的闪烁。我试过使用数据 URL,但收效甚微。
根据评论中的请求进一步详细信息:
我有一个单独的 Component
来显示每个聊天记录项目。它包含一个 Image
组件来显示头像。
在顶部日志中,我使用 FlatList
,在 renderItem
中,我正在呈现上述聊天记录组件。每当发送或接收任何消息时,它都会附加到 FlatList
中的 data
指向的数组。
每当添加一个项目时,列表都会重新呈现,导致 Image
再次创建(我已经搜索过但没有找到将项目附加到 FlatList
的任何好处影响现有儿童)。因此,我认为解决方案在于使图像加载速度更快,这样重新渲染就不会那么明显。
我想到闪烁的一个原因是,如果您将列表项的 key
和 forcing
重新分配给 re-render。检查是否有这种情况。这是列表视图上 re-render 的主要原因之一。