antd Calendar 動態接受數據和單獨月份處理

1.首先引入atnd Calendar日曆組件

2.設計思路 通過時間選擇Select選擇多個時間段,獲取每一個的值之後,通過發送請求的方式把時間段傳到Calendar日曆組件,組件通過獲取的時間顯示狀態到頁面上去。

3.根據設想獲取多個select獲取的值

根據useState的設置承接select的值初始狀態爲一個對象,這樣每次生成的select的内容都是他自己onchange選擇的數據

onChange={(value,dateString)=>{selArrdate[indexdate].dates=dateString }} />

4.獲取之後通過數據邏輯判斷對數據進行重組創建一個對應請求的數據格式,個人公司需求不同我就不多説了

5.根據獲取到的時間段傳到日曆組件具現。

//上傳時閒到日曆上判斷每月選擇日期

const getListData = (value) => {

let listData;

if(moduleArr){

moduleArr.map((item,index)=>{
  let selectDate = item.select_date.slice(8,10)
  let contentStauts = item.working_content
   switch (value.date()) {

   case Number(selectDate):
  listData = [
    {
      type: stauts,
      content: contentStauts,
    }
  ];
  break;

    default:
  }
  return selectDate
}) }
复制代码

//根據判斷每月選擇日期,進行渲染

const dateCellRender = (value) => {

let listss = []

if(moduleArr.length > 0) {

moduleArr.map((item)=>{
  
  if(item.select_date.slice(0,10) === value._d.toISOString().slice(0,10)){
  
    return listss = getListData(value);
  }else {
  
    return ""
  }
})
复制代码

}

效果: 日期選擇中8.09 8.17
在圖上顯示


作者:夢行者
链接:https://juejin.cn/post/7137114205315923976
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值