跳到主要内容
版本:v8

React 性能优化

在 Ionic 组件中使用循环

当在 Ionic 组件中使用循环时,我们推荐使用 React 的 key 属性。这能让 React 以高效的方式重新渲染循环元素,只更新组件内部的内容,而不是完全重新创建组件。

通过使用 key,您可以为每个循环元素提供稳定的标识,让 React 能够跟踪迭代器中的插入和删除操作。以下是如何使用 key 的示例:

MyComponent.tsx

import React, { useState } from 'react';
import { IonContent, IonItem, IonLabel, IonPage } from '@ionic/react';

export const MyComponent: React.FC = () => {
const [items, setItems] = useState([{ id: 0, value: 'Item 0' }, { id: 1, value: 'Item 1' }, ...]);

return (
<IonPage>
<IonContent>
{items.map(item => {
return (
<IonItem key={item.id}>
<IonLabel>{item.value}</IonLabel>
</IonItem>
)
})}
</IonContent>
</IonPage>
)
}

在这个示例中,我们有一个名为 items 的对象数组。每个对象包含一个 value 和一个 id。通过使用 key 属性,我们为每个对象传递 item.id。这个 id 用于为每个循环元素提供稳定的标识。

有关 React 如何使用 key 渲染列表的更多信息,请查看:https://react.dev/learn/rendering-lists#keeping-list-items-in-order-with-key