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一些实用技巧小结
Mar 18 Javascript
js获取TreeView控件选中节点的Text和Value值的方法
Nov 24 Javascript
用jquery实现点击栏目背景色改变
Dec 10 Javascript
JavaScript 盒模型 尺寸深入理解
Dec 31 Javascript
jquery获取form表单input元素值的简单实例
May 30 Javascript
js中获取时间new Date()的全面介绍
Jun 20 Javascript
Bootstrap导航条可点击和鼠标悬停显示下拉菜单的实现代码
Jun 23 Javascript
@ResponseBody 和 @RequestBody 注解的区别
Mar 08 Javascript
Vue2单一事件管理组件通信
May 09 Javascript
浅谈vuex为什么不建议在action中修改state
Feb 02 Javascript
在vue项目中利用popstate处理页面返回的操作介绍
Aug 06 Javascript
JavaScript 去重和重复次数统计
Mar 31 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 在线翻译函数代码
2009/05/07 PHP
在Windows下编译适用于PHP 5.2.12及5.2.13的eAccelerator.dll(附下载)
2010/05/04 PHP
PHP为表单获取的URL 地址预设 http 字符串函数代码
2010/05/26 PHP
php删除左端与右端空格的方法
2014/11/29 PHP
JQuery下关于$.Ready()的分析
2009/12/13 Javascript
JS图片浏览组件PhotoLook的公开属性方法介绍和进阶实例代码
2010/11/09 Javascript
读jQuery之一(对象的组成)
2011/06/11 Javascript
Javascript中自动切换焦点实现代码
2012/12/15 Javascript
JS关闭窗口或JS关闭页面的几种代码分享
2013/10/25 Javascript
JS实现自动切换文字的导航效果代码
2015/08/27 Javascript
使用angularjs创建简单表格
2016/01/21 Javascript
javascript创建对象的几种模式介绍
2016/05/06 Javascript
原生JS实现-星级评分系统的简单实例
2016/08/21 Javascript
详解Javascript中DOM的范围
2017/02/13 Javascript
详解Vue 普通对象数据更新与 file 对象数据更新
2017/04/26 Javascript
setTimeout时间设置为0详细解析
2018/03/13 Javascript
后台使用freeMarker和前端使用vue的方法及遇到的问题
2019/06/13 Javascript
Js实现复选框的全选、全不选反选功能代码实例
2020/02/28 Javascript
微信小程序实现时间戳格式转换
2020/07/20 Javascript
Python通过属性手段实现只允许调用一次的示例讲解
2018/04/21 Python
对python使用http、https代理的实例讲解
2018/05/07 Python
详解Python打包分发工具setuptools
2019/08/05 Python
Python循环实现n的全排列功能
2019/09/16 Python
在notepad++中实现直接运行python代码
2019/12/18 Python
浅谈Tensorflow 动态双向RNN的输出问题
2020/01/20 Python
Django多数据库配置及逆向生成model教程
2020/03/28 Python
Python日志:自定义输出字段 json格式输出方式
2020/04/27 Python
css3实现垂直下拉动画菜单示例
2014/04/22 HTML / CSS
周仰杰(JIMMY CHOO)英国官方网站:闻名世界的鞋子品牌
2018/10/28 全球购物
印度领先的眼镜电子商务网站:Lenskart
2019/12/16 全球购物
环境科学专业优秀毕业生自荐书
2014/02/03 职场文书
装修设计师求职信
2014/02/26 职场文书
公司保密承诺书
2014/03/27 职场文书
《四季》教学反思
2014/04/08 职场文书
财务部副经理岗位职责范本
2014/06/17 职场文书
85句关于理想的名言警句大全
2019/08/22 职场文书