reactjs - 切换在反应日选择器中选择的星期
问题描述
我在选定的一周内使用了 React 日期选择器。如果选择新的一周,我的状态会更新。如果我单击一周,我想取消选择日历中的周。
此外,我从服务器获取并发布日期,所以我想检查一下日期是否被选中。如果选择了日期,则单击到星期必须删除选中。
我的代码
state = {
selectedDays: [],
};
handleWeekClick = (weekNumber, days, e) => {
this.setState({
selectedDays: days,
});
};
render() {
const { selectedDays } = this.state;
return (
<div className="SelectedWeekExample">
<DayPicker
selectedDays={selectedDays}
showWeekNumbers
showOutsideDays
onDayMouseEnter={this.handleDayEnter}
onDayMouseLeave={this.handleDayLeave}
onWeekClick={this.handleWeekClick}
/>
在沙盒中
解决方案
尝试更改handleWeekClick
为:
handleWeekClick = (weekNumber, days, e) => {
console.log(days);
if (this.state.selectedDays.length) {
this.setState({
selectedDays: []
});
} else {
this.setState({
selectedDays: days
});
}
};
推荐阅读
- javascript - 为什么当被问到它是否是一个字符串时,这句话返回 false?
- paypal - 获取此 PayPal 按钮的 HTML 和 CSS 代码
- javascript - Vue 3 Composition API 提供/注入在单个文件组件中不起作用
- python - 使用 SQLalchemy 连接到 MySql 数据库时出错
- python - 合并具有不同行数的 DataFrame,并具有一个包含值总和的新列
- python - jsonload JSONDecodeError:无效的控制字符在
- javascript - 如何在 Javascript 中使用 FileReader() 以不同的方法读取 2 个不同的文件
- python - 网页抓取/将数据转换为 Python 中的表格数据
- graph - 是否可以将 Grafana 注释不放在面板底部?
- r - 如何遍历 R 中的列进行 T 检验?