我有一个验证架构,如果用户在某个时间范围之前选择一个日期,它会显示错误,但是当用户通过 Yup 收到错误时,它显示如下,这不是我想要的,因为我需要用户理解问题
但是,我希望以用户可以理解的方式格式化日期,例如只是日期而不是完整的时间和毫秒。我的代码如下,
const validationSchema = Yup.object({
contractOptionToExtend: Yup.number('Option to Extend').required().min(0),
originalEndDate: Yup.date().required().min(Yup.ref('startDate')),
startDate: contract.leadContract && contract.leadContract.startDate ? Yup.date().min(contract.leadContract.startDate) : Yup.date(),
ultimateEndDate: Yup.date().min(Yup.ref('currentEndDate')),
currentEndDate: Yup.date().min(Yup.ref('originalEndDate'))
});
const initialValues = {
contractOptionToExtend: contract && contract.contractOptionToExtendId || -1,
originalEndDate: contract && contract.originalEndDate,
startDate: contract && contract.startDate,
ultimateEndDate: contract && contract.ultimateEndDate,
currentEndDate: contract && contract.currentEndDate
};
Run Code Online (Sandbox Code Playgroud)
我的日期选择器组件
<DatePicker
margin="normal"
format="d MMM yyyy"
label="Original End Date"
value={values.originalEndDate}
onChange={handleOriginalEndDateChange}
onBlurCapture={change.bind(null, 'originalEndDate')}
required
id="originalEndDate"
name="originalEndDate"
autoOk={true}
error={touched.originalEndDate && Boolean(errors.originalEndDate)}
helperText={touched.originalEndDate ? errors.originalEndDate : ''}
/>
Run Code Online (Sandbox Code Playgroud) 我希望google-java-formatter
在我的几个项目中进行安装。
但是,在提交代码时,我希望CI
管道首先检查格式是否已完成。
我知道我可以使用.gitlab-ci.yml
根目录中的文件来完成此操作,但是我非常不确定如何实现检查所有文件格式是否正确的目标,任何人都可以帮助我解决如何执行此操作的google-java-formatter
问题gitlab
。
我还是单元测试的新手,我很难理解如何测试/模拟来自路由器的推送,
<Tab label="Members" alt="Members" onClick={() => Router.push('/members')}/>
Run Code Online (Sandbox Code Playgroud)
上面这行是我需要测试的,但我怎么能呢?我会创建一个假端点然后测试 onClick 吗?