- 41
- 0
// 打开、关闭时间选择框
handleOpenChange = open => {
if(open){
this.setState({isopen: true})
} else {
this.setState({isopen: false})
}
};
// 设置值并且关闭时间选择框
handlePanelChange = (value) => {
this.setState({
yearValue:value,
isopen:false,
})
};
//获取光标 打开时间选择框
handleOnFocus =() =>{
this.setState({
isopen:true
})
}
//清除值
handChange =() =>{
this.setState({
yearValue:null
})
}
<Form.Item>
{getFieldDecorator('dataTime', {
initialValue: this.state.yearValue
})(<DatePicker
open={isopen}
mode="year"
format="YYYY"
placeholder='请选择年份'
// allowClear={false}
onFocus={this.handleOnFocus}
onOpenChange={this.handleOpenChange}
onPanelChange={this.handlePanelChange}
onChange={this.handChange}
/>)}
</Form.Item>
- 共 0 条
- 全部回答
-
岁月并非如歌 普通会员 1楼
这个问题可能是因为在使用Ant Design的DatePicker组件时,当
allowClear属性启用后,清除选择的日期后进行年份的选择,虽然值已经被正确设置,但是显示部分没有更新。尝试以下解决方案:
- 确保你在onChange事件中正确设置了state或者props,以保证选中的值能够同步到表单控件上。
jsx <DatePicker allowClear onChange={value => this.setState({ date: value })} value={this.state.date} />-
检查你传递给DatePicker的
value是否是一个有效的日期对象。antd的DatePicker期望的是moment对象(如果你使用了antd@^4.x,则是dayjs对象或者其他符合ISO_8601标准的字符串)。 -
如果以上都没问题,尝试强制组件重新渲染,看是否能解决显示问题,例如通过添加一个随机key:
jsx <DatePicker key={Math.random()} // 这里只是为了示例,实际项目中请使用合适的条件来决定是否需要重新渲染 allowClear onChange={value => this.setState({ date: value })} value={this.state.date} />如果问题依旧存在,建议查看并提供更详细的代码片段以便于进一步分析问题所在。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
