【发布时间】:2022-01-01 00:32:37
【问题描述】:
不断收到此错误TypeError: Cannot read properties of undefined (reading 'ques')
在 faq.ques 所在的 FAQ 文件中。 如果我添加 faq.src.ques 然后错误转移到 src
一切都是正确的,但仍然无法弄清楚
任何解决方案???
常见问题解答文件
import FAQ from "./FAQ";
const FAQs = () => {
const[faqs, setfaqs]= useState([
{
ques: 'question1',
subtitle: "st1",
answer: "answer1",
open: true
},
{
ques: 'question2',
subtitle: "Pricing",
answer: "answer2",
open: false
},
{
ques: 'question3',
subtitle: "Pricing",
answer: "question3",
open: false
},
]);
const toggleFAQ = index => {
setfaqs(faqs.map((faq, i) => {
if(i === index) {
faq.open = !faq.open;
} else {
faq.open = false;
}
return faq;
}));
}
return (
<>
<div className="container">
<div className="row">
<div className="col-md-12">
<div className="faq-title">
<h1>FAQ</h1>
</div>
</div>
</div>
<div className="row">
<div className="col-md-12">
<div className="faq-content">
{faqs.map((faq, i) => {
<FAQ faq={faq} index={i} toggleFAQ={toggleFAQ}/>
})}
</div>
</div>
</div>
</div>
</>
);
};
export default FAQs;
常见问题文件
function FAQ({faq, index, toggleFAQ}) {
return (
<>
<div className="panel-group" id="accordion">
<div className="panel panel-default">
<h4 className="panel-title">
<div>{faq.ques}</div>
</h4>
<a data-toggle="#collapse" data-parent="#accordion" onClick={()=>toggleFAQ(index)}>+</a>
</div>
<div id="collapse" className={"panel-collapse in" + (faq.open ? " collapse" : " ")}>
<div className="panel-body">
<h5>{faq.subtitle}</h5>
<p>{faq.answer}</p>
</div>
</div>
</div>
</>
);
};
export default FAQ;
... .
.................................................. ..................................................... ..................................................... ..................................................... ......
【问题讨论】:
-
请在
answer: "answer1末尾添加"。语法高亮现在搞砸了 -
在编辑中而不是在实际代码中
-
您能否在
FAQ文件中控制台记录faq并在此处提供输出?
标签: javascript reactjs dom-events jsx typeerror