例えば、ある項目のチェックが入っているときだけ、特定の要素にバリデーションをかける場合
例)「別の配送先に送る」を選択した時だけ、別の配送先の入力項目にバリデーションをかけるような場合
うまくいったパターン
三項演算子を使って、v-validate
の値を動的に変更する方法
v-validate="条件 ? 'required' : '' "
v-model
でデータのバインディングを行い、チェックが入った場合に
required
のバリデーションをかけています
うまくいかなかったパターン
バリデーションをattach
とdetach
で登録 or 解除する方法
this.$validator.attach('name', 'required');
this.$validator.detach('name');
他の方法としてバリデーションをattach
とdetach
で登録 or 解除する方法を試したのですが、
attach
で登録したバリデーションがvalidateAll()
ではチェックしてくれませんでした。。。
また、明示的に要素にv-validate
をつけないとvalidate()
自体も動作してくない。。。
何かいい方法を知っている方がいれば教えて欲しいです。