LoginSignup
7
6

More than 5 years have passed since last update.

【VeeValidate】条件付きでバリデーションをかける方法

Last updated at Posted at 2018-01-21

例えば、ある項目のチェックが入っているときだけ、特定の要素にバリデーションをかける場合
例)「別の配送先に送る」を選択した時だけ、別の配送先の入力項目にバリデーションをかけるような場合

うまくいったパターン

三項演算子を使って、v-validateの値を動的に変更する方法

v-validate="条件 ? 'required' : '' "

うまくいったパターン

v-modelでデータのバインディングを行い、チェックが入った場合に
requiredのバリデーションをかけています

うまくいかなかったパターン

バリデーションをattachdetachで登録 or 解除する方法

this.$validator.attach('name', 'required');
this.$validator.detach('name');

他の方法としてバリデーションをattachdetachで登録 or 解除する方法を試したのですが、
attachで登録したバリデーションがvalidateAll()ではチェックしてくれませんでした。。。
また、明示的に要素にv-validateをつけないとvalidate()自体も動作してくない。。。
何かいい方法を知っている方がいれば教えて欲しいです。

上手くいかなかったパターン

7
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
6