javascript - 警告:收到布尔属性“隐藏”的字符串“真”
问题描述
我正在尝试制作一个在点击时打开和关闭的手风琴。我所有的数据都存储在 .json 文件中。即使布尔值正在改变(我通过控制台检查),它也不起作用。我的控制台也给出了以下警告:警告:收到true
布尔属性的字符串hidden
。虽然这可行,但如果您传递字符串“false”,它将无法按预期工作。你是说 hidden={true} 吗?
当我手动将“假”或“真”传递给“隐藏”时,它会相应地显示手风琴的内容。我和盖茨比一起工作。这是我的代码:
handleClick(e, id) {
const itemIndex = this.props.jobOpenings.findIndex(i => i.id === id);
const item = { ...this.props.jobOpenings[itemIndex] };
const items = [...this.props.jobOpenings];
item.isCollapsed = !this.props.jobOpenings[itemIndex].isCollapsed;
item.isAriaExpanded = !this.props.jobOpenings[itemIndex].isAriaExpanded;
item.isHidden = !this.props.jobOpenings[itemIndex].isHidden;
items[itemIndex] = item;
this.setState({ items: items });
}
constructor(props) {
super(props);
this.state = {
items: [...this.props.jobOpenings]
};
this.handleClick = this.handleClick.bind(this);
}
render() {
const items = this.props.jobOpenings;
return (
{
items.map(item =>
<div key={item.id}>
<button className="accordion-btn" onClick={(e) => this.handleClick(e, item.id)} aria-label="Careers">
<span className="accordion-title" id={item.id} aria-expanded={items[item.id].isAriaExpanded}>{item.title}</span>
<span className="accordion-icon" aria-hidden="true"> {items[item.id].isCollapsed ? <Plus /> : <Minus />} </span>
</button>
<div className="accordion-content" hidden={items[item.id].isHidden}>
<p className="accordion-content-title">Job Description</p>
<p>• {item.requirementOne}</p>
<p>• {item.requirementTwo}</p>
<p>• {item.requirementThree}</p>
<p className="accordion-content-title">Required Skills</p>
<p>• {item.requiredSkills}</p>
<p className="accordion-content-title">Required Experience</p>
<p>• {item.requiredExperience}</p>
<p className="accordion-content-title">Preferred Education</p>
<p>• {item.requiredEducation}</p>
</div>
</div>
)
}
)
}
解决方案
推荐阅读
- r - Conducting a series of t-tests between two data frames with covariates
- database - 在特定记录上打开表单后设置控件属性
- c++ - 如何检查类实例向量的索引是否为空
- java - 验证来自添加到数组中的扫描仪的用户输入
- html - 如何在 CSS div Box 之外制作渐变形状
- amazon-web-services - 删除 S3 存储桶 AWS 中的版本
- sql - SQL查询根据第2列值多次选择第1列值
- javascript - Javascript布尔运算符混淆
- python - python:在while循环中仅打印一行
- javascript - 反应本机抽屉导航在按钮单击时不起作用