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 相关文章推荐
小议Javascript中的this指针
Mar 18 Javascript
jQuery提示效果代码分享
Nov 20 Javascript
js实现有时间限制消失的图片方法
Feb 27 Javascript
iscroll.js的上拉下拉刷新时无法回弹的解决方法
Feb 18 Javascript
jQuery选择器基础入门教程
May 10 Javascript
laypage分页控件使用实例详解
May 19 Javascript
JS实现仿百度文库评分功能
Jan 12 Javascript
关于layui flow loading占位图的实现方法
Sep 21 Javascript
Vue获取页面元素的相对位置的方法示例
Feb 05 Javascript
angular中的post请求处理示例详解
Jun 30 Javascript
vue keep-alive的简单总结
Jan 25 Vue.js
js实现验证码干扰(动态)
Feb 23 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
PHP EOT定界符的使用详解
2008/09/30 PHP
解析PHP中的内存管理,PHP动态分配和释放内存
2013/06/28 PHP
ajax+php实现无刷新验证手机号的实例
2017/12/22 PHP
php 中phar包的使用教程详解
2018/10/26 PHP
让AJAX不依赖后端接口实现方案
2012/12/03 Javascript
iframe的父子窗口之间的对象相互调用基本用法
2013/09/03 Javascript
jquery简单图片切换显示效果实现方法
2015/01/14 Javascript
动态加载js文件简单示例
2016/04/21 Javascript
浅谈js基础数据类型和引用类型,深浅拷贝问题,以及内存分配问题
2017/09/02 Javascript
VueJs组件prop验证简单介绍
2017/09/12 Javascript
基于Two.js实现星球环绕动画效果的示例
2017/11/06 Javascript
利用Blob进行文件上传的完整步骤
2018/08/02 Javascript
基于Nodejs的Tcp封包和解包的理解
2018/09/19 NodeJs
对vuex中getters计算过滤操作详解
2019/11/06 Javascript
bootstrap实现嵌套模态框的实例代码
2020/01/10 Javascript
Vue3项目打包后部署到服务器 请求不到后台接口解决方法
2020/02/06 Javascript
[00:32]DOTA2上海特级锦标赛 Ehome战队宣传片
2016/03/03 DOTA
python求解水仙花数的方法
2015/05/11 Python
浅谈numpy数组中冒号和负号的含义
2018/04/18 Python
Python Web框架之Django框架cookie和session用法分析
2019/08/16 Python
python web框架 django wsgi原理解析
2019/08/20 Python
Python是怎样处理json模块的
2020/07/16 Python
用Python进行websocket接口测试
2020/10/16 Python
史泰博(Staples)中国官方网站:办公用品一站式采购
2016/09/05 全球购物
以工厂直接定价的传奇性能:Ben Hogan Golf
2019/01/04 全球购物
十月份红领巾广播稿
2014/01/22 职场文书
班长演讲稿范文
2014/04/24 职场文书
支行行长竞聘演讲稿
2014/05/15 职场文书
舞蹈教育学专业求职信
2014/06/29 职场文书
行政专员岗位职责说明书
2014/07/30 职场文书
分公司总经理岗位职责
2014/07/30 职场文书
公务员政审材料范文
2014/12/23 职场文书
试用期转正工作总结2015
2015/05/28 职场文书
你为什么是穷人?可能是这5个缺点造成
2019/07/11 职场文书
Zabbix对Kafka topic积压数据监控的解决方案
2022/07/07 Servers
详解flex:1什么意思
2022/07/23 HTML / CSS