我有一个带有动态字段的表单(答案)。我使用Formik和烨的验证。一个答案是 object {text: string, is_correct: boolean}。我需要创建至少一个答案应该具有的验证模式is_correct: true
在这种情况下如何进行验证?
function answersSchema (rules) {
let {
QUIZ_ANSWER_MAX_LENGTH,
QUIZ_ANSWER_MIN_LENGTH,
} = rules;
return Yup.object().shape({
text: Yup.string()
.min(QUIZ_ANSWER_MIN_LENGTH, 'Too Short!')
.max(QUIZ_ANSWER_MAX_LENGTH, 'Too Long!').required('Text of answer is required'),
is_correct: Yup.boolean().required()
})
}
export function setQuizSchema(rules) {
let {
QUIZ_QUESTION_MAX_LENGTH,
QUIZ_QUESTION_MIN_LENGTH,
QUIZ_DESCRIPTION_MAX_LENGTH,
QUIZ_DESCRIPTION_MIN_LENGTH,
QUIZ_MAX_COUNT_OF_ANSWERS,
QUIZ_MIN_COUNT_OF_ANSWERS,
} = rules;
return Yup.object().shape({
question: Yup.string()
.min(QUIZ_QUESTION_MIN_LENGTH, 'Too Short!')
.max(QUIZ_QUESTION_MAX_LENGTH, 'Too Long!')
.required('Required'),
description: Yup.string()
.min(QUIZ_DESCRIPTION_MAX_LENGTH, 'Too Short!')
.max(QUIZ_DESCRIPTION_MIN_LENGTH, 'Too Long!'),
answers: Yup.array().of(answersSchema(rules))
.min(QUIZ_MIN_COUNT_OF_ANSWERS, …Run Code Online (Sandbox Code Playgroud)这是我第一次使用Foundation for Emails标记电子邮件。
<row class="content-section">
<columns small="12">
<spacer size="16"></spacer>
<h3 class="title text-bold">Dear JJ,</h3>
<p class="content-text">it is your one time password</p>
<spacer size="16"></spacer>
<form data-abide class="form-primary">
<input class="input-primary input-large input-centered" type="text" value="36002117" readonly></input>
<button href="#" class="btn-primary button-center radius text-center" type="submit">Login</button>
<spacer size="16"></spacer>
<small>This one time password is valid for 5 minutes from time it is generated.</small>
</form>
<spacer size="16"></spacer>
</columns>
</row>Run Code Online (Sandbox Code Playgroud)
我正在使用此服务https://putsmail.com测试电子邮件 当我直接发送此电子邮件并从移动设备测试它时,响应式工作,以及当我在浏览器响应式工作中测试它时。但是当我转发此消息时,响应不起作用。用Gmail测试过。我在其他电子邮件中测试了这种行为,没有这样的问题。有机会纠正这种行为吗?谢谢你。