antd-日历组件,前后禁止选择,只能选中间一部分的实例


Posted in Javascript onOctober 29, 2020

antd-日历组件,前后禁止选择,只能选中间一部分:

dateDisabledDate(current) { // 需求有效期的禁止选择时间
  if (this.state.sailingtimeValue != null && this.state.sailingtimeValue.length != 0) {
   return current && (current < moment().subtract(1, 'd').add(1, "M") || current > moment(this.state.sailingtimeValue[0]).subtract(1, 'd'));
  } else {
   return current && current < moment().subtract(1, 'd').add(1, "M")
  }
 }

补充知识:关于 Ant Design 中 Input 组件的 defaultValue 属性的一个小问题

记录关于一次 Ant Design 使用时遇到的一个问题,defaultValue属性赋值,页面交互操作处理数据之后页面数据未更新(未按照预期显示)。

class Component extends React.Component{
  constructor(props) {
   super(props);
   this.state = {
    list: [
     {name: 111},
     {name: 222},
     {name: 333},
    ]
   };
  }

  deal(index) {
   let {list} = this.state;
   list.splice(index, 1);
   this.setState({
    list
   });
  }

  render() {
   let {list} = this.state;

   return (
    <span>
    <Button type="danger" onClick={this.deal.bind(this, index)}>删除</Button>
    {
     list.map((item, index) => {
      <Row>
       <Col span={24}>
        <Item {...formItemLayout} label=" " colon={false}>
         <Input defaultValue={item.name}
           onChange={event => {this.nameChange(event, index)}} />
        </Item>
       </Col>
      </Row>
     })
    }
    </span>
   );
  }
 }

页面初始效果:

antd-日历组件,前后禁止选择,只能选中间一部分的实例

经过 deal 方法处理之后的效果:

antd-日历组件,前后禁止选择,只能选中间一部分的实例

经过多次尝试,比如:

怀疑 splice 出了问题,因为工程中 splice 有很多库的处理,经过各种尝试打印 splice 处理之后的数据结果,排除 splice 因素

antd-日历组件,前后禁止选择,只能选中间一部分的实例

尝试 react-addons-update ,排除,

在 render 函数中打印结果,发现数据更新过了,费解…

在 render 中,通过 {item.name} 检测数据变化,确定 span 显示的数据已经发生变化,最终确定结果:数据已经更新,Input 显示存在问题!!!

……

经过一段时间的思考,确认数据已经更新,只是在显示的时候出了问题,返回去查 antD 的 Input 文档,发现了:

antd-日历组件,前后禁止选择,只能选中间一部分的实例

defaultValue 与 value 两个相似的属性,于是尝试着 value 替代 defaultValue 最终解决问题。

以上这篇antd-日历组件,前后禁止选择,只能选中间一部分的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
动态加载js文件 document.createElement
Oct 14 Javascript
url 编码 js url传参中文乱码解决方案
Apr 11 Javascript
js ondocumentready onmouseover onclick onmouseout 样式
Jul 22 Javascript
AJAX异步从优酷专辑中采集所有视频及信息(JavaScript代码)
Nov 20 Javascript
JS事件在IE与FF中的区别详细解析
Nov 20 Javascript
jQuery对JSON数据进行排序输出的方法
Jun 24 Javascript
微信小程序 出现错误:{&quot;baseresponse&quot;:{&quot;errcode&quot;:-80002,&quot;errmsg&quot;:&quot;&quot;}}解决办法
Feb 23 Javascript
Node.js中的require.resolve方法使用简介
Apr 23 Javascript
javascript回调函数的概念理解与用法分析
May 27 Javascript
利用Javascript开发一个二维周视图日历
Dec 14 Javascript
通过实例解析javascript Date对象属性及方法
Nov 04 Javascript
浅谈JS的原型和原型链
Jun 04 Javascript
解决antd日期选择组件,添加value就无法点击下一年和下一月问题
Oct 29 #Javascript
浅析微信小程序自定义日历组件及flex布局最后一行对齐问题
Oct 29 #Javascript
解决ant Design中Select设置initialValue时的大坑
Oct 29 #Javascript
解决Ant Design Modal内嵌Form表单initialValue值不动态更新问题
Oct 29 #Javascript
微信小程序自定义yPicker组件实现省市区三级联动功能
Oct 29 #Javascript
解决ant Design Search无法输入内容的问题
Oct 29 #Javascript
js实现随机圆与矩形功能
Oct 29 #Javascript
You might like
火车头采集器3.0采集图文教程
2007/03/17 PHP
解析MySql与Java的时间类型
2013/06/22 PHP
浅析ThinkPHP中execute和query方法的区别
2014/06/13 PHP
Jquery ajax传递复杂参数给WebService的实现代码
2011/08/08 Javascript
javascript object array方法使用详解
2012/12/03 Javascript
JS去除右边逗号的简单方法
2013/07/03 Javascript
js自动生成的元素与页面原有元素发生堆叠的解决方法
2013/10/24 Javascript
在JS方法中返回多个值的方法汇总
2015/05/20 Javascript
Bootstrap中表单控件状态(验证状态)
2016/08/04 Javascript
js仿京东轮播效果 选项卡套选项卡使用
2017/01/12 Javascript
学习使用Bootstrap输入框、导航、分页等常用组件
2017/05/11 Javascript
浅谈vue单一组件下动态修改数据时的全部重渲染
2018/03/01 Javascript
解决Vue2.0 watch对象属性变化监听不到的问题
2018/09/11 Javascript
vue项目中axios请求网络接口封装的示例代码
2018/12/18 Javascript
webpack-url-loader 解决项目中图片打包路径问题
2019/02/15 Javascript
微信公众号平台接口开发 获取微信服务器IP地址方法解析
2019/08/14 Javascript
JS插件amCharts实现绘制柱形图默认显示数值功能示例
2019/11/26 Javascript
python模拟登陆阿里妈妈生成商品推广链接
2014/04/03 Python
python返回昨天日期的方法
2015/05/13 Python
Python素数检测实例分析
2015/06/15 Python
Python获取本机所有网卡ip,掩码和广播地址实例代码
2018/01/22 Python
Python根据文件名批量转移图片的方法
2018/10/21 Python
Python将一个Excel拆分为多个Excel
2018/11/07 Python
python傅里叶变换FFT绘制频谱图
2019/07/19 Python
Django框架中间件定义与使用方法案例分析
2019/11/28 Python
python爬虫库scrapy简单使用实例详解
2020/02/10 Python
总结Pyinstaller的坑及终极解决方法(小结)
2020/09/21 Python
详解Python爬虫爬取博客园问题列表所有的问题
2021/01/18 Python
Brookstone美国官网:独特新奇产品
2017/03/04 全球购物
纠风工作实施方案
2014/03/15 职场文书
幼儿园六一儿童节主持节目串词
2014/03/21 职场文书
专项法律服务方案
2014/06/11 职场文书
低碳环保口号
2014/06/12 职场文书
学习十八大的心得体会
2014/09/01 职场文书
中学生运动会广播稿
2015/08/19 职场文书
Python字符串常规操作小结
2022/04/03 Python