web-dev-qa-db-ja.com

yup検証空母でないかどうかを確認してください

const validationSchema = Yup.object().shape({
  newPassword: Yup.string().min(8, 'Password must be at least 8 characters');
});
 _

NewPasswordフィールドが空でない場合にのみ検証を検証したいです。どうやってすることができますか?

3
장수환

この問題を解決するための異なるアプローチがあります。

使用を使用するtest

const validationSchema = Yup.object().shape({
          newPassword: Yup.string().test('empty-check','Password must be at least 8 characters',password=>password.length==0
 _

いつ

 const validationSchema = Yup.object().shape({
      newPassword: Yup.string().when('newPassword',{
             is:(password)=>password.length>0
             then: Yup.string().min(8, 'Password must be at least 8 characters');
    });
 _
6
Dipesh KC

オルタナティブ使用 テスト

const validationSchema = Yup.object().shape({
    newPassword: Yup.string().test(
        'empty-or-8-characters-check',
        'Password must be at least 8 characters',
        password => !password || password.length >= 8,
    ),
});
 _
0
Joao-rangel