我正在尝试从 React js 的列表中删除单击项目。但我点击删除按钮,它从列表中删除最后一项,而不是我点击的那个。如果我签入 console.log 它会显示正确的输出,但不能正确呈现。我试图以许多不同的方式删除项目。这是我的 poroject 的代码框链接 https://9o0jw.csb.app/ 我不知道我做错了什么这是我的代码片段
{projects &&
projects.map((project, key) => (
<div
key={`editProject-${key}`}
className="d-sm-flex justify-content-between align-items-center mb-2"
>
<div className="flex-sm-fill">
<div className="project-input-field">
<input type="text" defaultValue={project.title} />
</div>
<div className="project-input-field">
<input type="url" defaultValue={project.link} />
</div>
</div>
<div className="remove-project">
<button onClick={() => removeProject(project.title)}>
Remove Projoect
</button>
</div>
</div>
))}
这是删除功能
const removeProject = title => {
// let newProjects = projects;
// newProjects = newProjects.filter(project => project.title !== title);
// setProjects(newProjects);
setProjects(prevProject => {
return prevProject.filter(pro => pro.title !== title);
});
};
慕的地10843
相关分类