9

私が理解している限り、コールバックは、あらゆるタイプの検証のためにカスタマイズして任意のフィールドに設定できる制約です。

カスタム検証制約は、基本制約クラスをオーバーライドします(任意のフィールドで任意のタイプの検証を作成します)

違いがわからないのですが、なぜ一方を使用し、もう一方を使用しないのですか?パフォーマンスの違いもありますか?

4

1 に答える 1

7

パフォーマンスの違いを認識するためにフォームコンポーネントについてはあまり調べていませんが、それ以外に、なぜどちらかを選択する必要があるのでしょうか。

コールバック

  • これは、制約だけでなく、検証プロセス全体をカスタマイズすることを目的としています。たとえば、エラーを表示する必要がある場所を設定できます。
  • ターゲットは常にクラスであり、プロパティで使用することはできません。
  • 再利用することはできません。そのクラス/エンティティでのみ使用できます。

カスタムバリデーターの制約

  • どこでも再利用できます(@MrGlassが言ったように、サービスを制約として使用することもできます)。
  • クラスおよびプロパティターゲットで使用できます。
  • 何かが失敗したときにのみカスタマイズでき、失敗した後に何が行われるかはカスタマイズできません。
于 2013-03-04T16:18:56.997 に答える