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 相关文章推荐
利用Dojo和JSON建立无限级AJAX动态加载的功能模块树
Mar 24 Javascript
js中精确计算加法和减法示例
Mar 28 Javascript
js获取元素的外链样式的简单实现方法
Jun 06 Javascript
浅析BootStrap栅格系统
Jun 07 Javascript
Json按某个键的值进行排序
Dec 22 Javascript
Angular2关于@angular/cli默认端口号配置的问题
Jul 15 Javascript
浅谈react-router HashRouter和BrowserRouter的使用
Dec 29 Javascript
解决vue-cli项目打包出现空白页和路径错误的问题
Sep 04 Javascript
js根据需要计算数组中重复出现某个元素的个数
Jan 18 Javascript
详解Vue前端对axios的封装和使用
Apr 01 Javascript
React精髓!一篇全概括小结(急速)
May 23 Javascript
微信小程序中网络请求缓存的解决方法
Dec 29 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
syphon 虹吸式咖啡冲泡冲煮倒水的得与失
2021/03/03 冲泡冲煮
php将数据库中所有内容生成静态html文档的代码
2010/04/12 PHP
php array_walk() 数组函数
2011/07/12 PHP
php短信接口代码
2016/05/13 PHP
PHP实现接收二进制流转换成图片的方法
2017/01/10 PHP
JavaScript调用堆栈及setTimeout使用方法深入剖析
2013/02/16 Javascript
将字符串转换成gb2312或者utf-8编码的参数(js版)
2013/04/10 Javascript
js调用iframe实现打印页面内容的方法
2014/03/04 Javascript
jQuery实现的类似淘宝网站搜索框样式代码分享
2015/08/24 Javascript
详解JavaScript对象序列化
2016/01/19 Javascript
jQuery前端开发35个小技巧
2016/05/24 Javascript
AngularJS用户选择器指令实例分析
2016/11/04 Javascript
JavaScript中值类型和引用类型的区别
2017/02/23 Javascript
详解从Node.js的child_process模块来学习父子进程之间的通信
2017/03/27 Javascript
基于vue实现swipe分页组件实例
2017/05/25 Javascript
vue-router重定向不刷新问题的解决
2018/06/25 Javascript
解决vue 格式化银行卡(信用卡)每4位一个符号隔断的问题
2018/09/14 Javascript
详解关于vue2.0工程发布上线操作步骤
2018/09/27 Javascript
vue组件从开发到发布的实现步骤
2018/11/11 Javascript
深入了解query和params的使用区别
2019/06/24 Javascript
uni-app微信小程序登录并使用vuex存储登录状态的思路详解
2019/11/04 Javascript
Python随机生成信用卡卡号的实现方法
2015/05/14 Python
同时安装Python2 &amp; Python3 cmd下版本自由选择的方法
2017/12/09 Python
Flask教程之重定向与错误处理实例分析
2019/08/01 Python
Python requests.post方法中data与json参数区别详解
2020/04/30 Python
CSS3实现圆角、阴影、透明效果并兼容各大浏览器
2014/08/08 HTML / CSS
Boutique 1美国:阿联酋奢侈时尚零售商
2017/10/16 全球购物
应用化学专业本科生求职信
2013/09/29 职场文书
作风建设演讲稿
2014/05/23 职场文书
毕业生找工作求职信
2014/08/05 职场文书
高三英语教学计划
2015/01/23 职场文书
大学生个人学年总结
2015/02/15 职场文书
综合办公室岗位职责
2015/04/11 职场文书
2015年信息中心工作总结
2015/05/25 职场文书
一文读懂navicat for mysql基础知识
2021/05/31 MySQL
口袋妖怪冰系十大最强精灵,几何雪花排第七,第六类似北极熊
2022/03/18 日漫