我在下面的代码中有同样的问题。我添加了一个关键,认为它是适当的,但仍然得到关键的警告信息。嗨,伙计们,我在下面的代码中遇到了同样的问题。我添加了一个关键,认为它是适当的,但仍然得到关键的警告信息。
你能帮忙吗<狮子座
import { useState } from "react";
import { FaTimes } from "react-icons/fa";
import EditSkillsForm from "./editSkillsForm";
const SkillsList = ({ inputs, handleDeleteClick, handleCancelClick, handleEditClick, setIsEditing, handleUpdateInput,currentInput}) => {
const [ isEditing, setISEditing ] = useState(false);
//const [ currentSkill, setCurrentSkill ] = useState({});
handleEditClick = () => {
setISEditing(true);
console.log("editing", true)
}
return (
<div className="col-lg-4 col-sm-6 mb-4">
<div className="card p-2">
<div className="card-Header text-center mb-4">
<h4 className="card-title mt-2">Mastered Skills List</h4>
</div>
{inputs.map((skill, idx) => {
return (
<>
<div className="card width: 10rem; mb-3 p-2" key={idx}>
<div className="card-header text-center mb-4">
<h5 className="card-title mt-2">{skill}</h5>
</div>
<img src="../../logo.svg" className="card-img-top" alt="..." key={idx} />
<div className="card-body">
<div className="card-title text-center mt-2 " key={idx}>
{
isEditing ? (
<div key={idx}>
<EditSkillsForm
inputs={inputs}
editing={setIsEditing}
cancelClick= {handleCancelClick}
updateInput = {handleUpdateInput}
currentInput={currentInput}
/>
</div>
) : null
}
{/* <EditSkillsForm inputs={inputs} /> */}
<ol key={idx}>
Skill name: {skill}
</ol>
</div>
</div>
<div className="card-footer" >
<div className="row mb-2" key={idx}>
<button
className="btn btn-primary w-100"
onClick={() => handleEditClick(inputs.idx)}>Edit
</button>
</div>
<div className="row">
<FaTimes className="mb-2" fill="#ffc800" onClick={() => handleDeleteClick(idx)} key={idx} />
</div>
</div>
</div>
</>
)
}
)}
</div>
</div>
);
}
export default SkillsList;
键必须是唯一的所有元素在你的组件.因为我可以看到你使用相同的键idx
在多个div元素,所以它不再是唯一的.尝试使每个div一个特殊的名称除了那个idx
值,以使其对每一个都是唯一的。