如何在react中为对象数组设置State



假设我得到了这样的状态

const [peoples, setPeople] = useState[
{name: 'Sam', power: 0},
{name: 'Tam', power: 0},
{name: 'Lam', power: 0},
{name: 'Bam', power: 0},
{name: 'Jam', power: 0},
{name: 'Yum', power: 0},
];

例如,我想将Bam功率更新为2,更新这种对象阵列的正确方法是什么

如何在react 中为以下对象数组设置State

const [peoples, setPeople] = useState([
{name: 'Sam', power: 0},
{name: 'Tam', power: 0},
{name: 'Lam', power: 0},
{name: 'Bam', power: 0},
{name: 'Jam', power: 0},
{name: 'Yum', power: 0},
]); 
const powerUp = (name, power) => {
setPeople(peoples.map(
(people) => 
people.name === name ? {...people, power: power} : people
));
};

最新更新