我希望用户能够不选择日期。
<LocalizationProvider dateAdapter={AdapterDateFns}>
<MobileDatePicker
label={"Date From"}
inputFormat="dd/MM/yyyy"
disablePast={true}
value={datefrom}
minDate={new Date()}
onChange={(newValue) => {
setDateFrom(format(newValue, 'MM/dd/yyyy'));
if (dateto == '') {
setDateTo(format(newValue, 'MM/dd/yyyy'));
}
}}
renderInput={(params) => <TextField variant="outlined" {...params} helperText={null} fullWidth />}
/>
我认为这将工作:
<Button onClick={(newValue) => {setDateFrom(null);}}>CLEAR DATES</Button>
虽然它清除了日期,但它不允许我保存空白字段
如果您只想忽略这种情况下的未定义值,则可以有条件地展开对象。
这样应该可以工作。
await setDoc(docRef, {
mandatoryField: "value",
...(dateTo === "" ? {} : {timeStamp: dateTo} )
})
如果你想忽略所有未定义的值供将来使用,你可以初始化firestore设置如下。
import { getFirestore, initializeFirestore } from 'firebase/firestore'; // Firebase v9+
// Must be called before getFirestore()
initializeFirestore(app, {
ignoreUndefinedProperties: true
});
const firestore = getFirestore(app);