解決Antd 里面的select 選擇框聯(lián)動觸發(fā)的問題
有兩個 select框,且這倆select框是關聯(lián)的,觸發(fā)select1,select2里面才會有值。
但是現(xiàn)在的問題是這樣的:
觸發(fā)select1,觸發(fā)select2,再觸發(fā)select1,此時select2里面的值變成了上次一選中的value 值,而不會被清空。
解決辦法:
使用Select 里面的value屬性,來進行清空
<Form style={{padding:'20px','boxSizing':'border-box'}}> <FormItem label="套卷名稱" {...formItemLayout}> <Select defaultValue={packagedPapersId} onChange={selectPackage}> { packagedPaperList.map((item,idx)=>( <Option value={item.packagedPapersId} key={idx}>{item.packagedPapersName}</Option> )) } </Select> </FormItem> <FormItem label="試卷名稱" {...formItemLayout}> <Select defaultValue={paperId} value={paperId} onChange={(val,item)=>selectPaper(val,item)}> { paperList.map((item,idx)=>( <Option value={item.paperId} key={idx}>{item.paperName}</Option> )) } </Select> </FormItem> </Form>
// select1里面的判斷 const selectPackage = (value) =>{ if(paperId != '請選擇名稱'){ setPaperId('請選擇名稱'); } setPackagedPapersId(value) paperListFn(value) }
補充知識:antd RangePicker限制選擇時間跨度是30天
我就廢話不多說了,大家還是直接看代碼吧~
const { RangePicker } = DatePicker;
const [selectDate, setSelectDate] = useState(null);
/* 控制下單時間選擇范圍30天 */ const disabledTaskDate = (current) => { if (!current || !selectDate) return false; const offsetV = 2592000000; //30天轉換成ms const selectV = selectDate.valueOf(); const currenV = current.valueOf(); return (calcMinus(currenV, offsetV) > selectV || calcAdd(currenV, offsetV) < selectV) ? true : false; } /* 選擇任務時間變化 */ const onDateChange = (dates) => { if (!dates || !dates.length) return; setSelectDate(dates[0]); } const onDateOpenChange = () => { setSelectDate(null); }
<RangePicker showTime={{ format: 'HH:mm:ss' }} disabledDate={disabledTaskDate} onCalendarChange={onDateChange} onOpenChange={onDateOpenChange} />
以上這篇解決Antd 里面的select 選擇框聯(lián)動觸發(fā)的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
vue-cli3 打包優(yōu)化之 splitchunks詳解
這篇文章主要介紹了vue-cli3 打包優(yōu)化之 splitchunks的相關知識,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-07-07JavaScript實現(xiàn)簡單的圖片切換功能(實例代碼)
這篇文章主要介紹了JavaScript實現(xiàn)簡單的圖片切換功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2020-04-04深入探討Vue3實現(xiàn)多數(shù)據(jù)變化監(jiān)聽的方式
隨著 Vue 3 的發(fā)布,框架帶來了更多的新特性和增強,其中之一就是 watch 函數(shù)的升級,這一改進使得多個數(shù)據(jù)的變化偵聽更加優(yōu)雅和靈活,本文將深入探討 Vue 3 中的 watch 函數(shù),以及如何以更加優(yōu)雅的方式實現(xiàn)對多個數(shù)據(jù)變化的監(jiān)聽2023-08-08Vue結合Element-Plus封裝遞歸組件實現(xiàn)目錄示例
本文主要介紹了Vue結合Element-Plus封裝遞歸組件實現(xiàn)目錄示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-04-04