antd-DatePicker日期选择器
需求
- 点击当日,一周,一个月,三个月,半年按钮,修改起始时间。
- 用户可以自行选择时间。

在state中定义两个变量
- dateStart:用来存储时间,渲染到页面
- time:按钮
constructor(props) {super(props);this.state = {dateStart: now,time: ""}
}
具体实现
const nowTimeStamp = Date.now();
const now = new Date(nowTimeStamp);
let newDate = ""class MessageModify extends Component {constructor(props) {super(props);this.state = {dateStart: now,time: ""}}formatDate = (date) => {if (this.state.time === "") {const dateStr = `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()}`;newDate = dateStrreturn `${dateStr}`;}else if (this.state.time === "当日") {const dateStr = `${now.getFullYear()}-${now.getMonth() + 1}-${now.getDate()}`;newDate = dateStrreturn `${dateStr}`;}else if (this.state.time === "近一周") {const qianyizhou = new Date(now-7*24*3600*1000)const dateStr = `${qianyizhou.getFullYear()}-${qianyizhou.getMonth() + 1}-${qianyizhou.getDate()}`newDate = dateStrreturn `${dateStr}`;} else if (this.state.time === "近一月") {const dateStr = `${now.getFullYear()}-${now.getMonth() + 1 -1}-${now.getDate()}`newDate = dateStrreturn `${dateStr}`;} else if (this.state.time === "近三月") {const dateStr = `${now.getFullYear()}-${now.getMonth() + 1 -3}-${now.getDate()}`newDate = dateStrreturn `${dateStr}`;} else if (this.state.time === "近半年") {const dateStr = `${now.getFullYear()}-${now.getMonth() + 1 -6}-${now.getDate()}`newDate = dateStrreturn `${dateStr}`;} }render() {return (<div><Button type="primary" onClick={() => this.setState({time: "当日"})}>当日</Button><Button type="primary" onClick={() => this.setState({time: "近一周"})}>近一周</Button><Button type="primary" onClick={() => this.setState({time: "近一月"})}>近一月</Button><Button type="primary" onClick={() => this.setState({time: "近三月"})}>近三月</Button><Button type="primary" onClick={() => this.setState({time: "近半年"})}>近半年</Button><div><div className="l-title">起始时间</div><div className="l-time am-list-item"><DatePickerminDate={new Date(2020,1,1,0,0,0)}maxDate={new Date(2022,1,1,0,0,0)}mode="date"title=""extra="Optional"value={this.state.dateStart}format={val => this.formatDate(val, "")}onChange={date => this.setState({dateStart: date, time: ""})} ><List.Item value={this.state.date}></List.Item></DatePicker></div></div></div>)}
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!