このCookBookでは、 iAP 2021 Summer で追加された要件「デザイナのプロパティのバリデーションエラーを、エレメント側から操作するインタフェースを提供します。」について説明します。
以下で自作したエレメント側からプロパティのバリデーションエラーを操作する手順を説明します。
レシピ
- エレメントでバリデーションエラーを操作するインタフェースの紹介
- バリデーションエラーメッセージを表示する方法
- バリデーションエラーメッセージをクリアする方法
1. エレメントでバリデーションエラーを操作するインタフェースの紹介
エレメントからバリデーションエラーを表示するインタフェースを紹介します。
- setValidationError
デザイナのプロパティエディタに、バリデーションエラーメッセージを表示します。 - clearValidationError
プロパティ値に対するバリデーションエラーメッセージをクリアします。
2. バリデーションエラーメッセージを表示する方法
- エレメントを実装する。
プログラミングガイド を参考にエレメントを実装します。 - バリデーションエラーメッセージを表示するコードを追加します。
エレメント作成時にチェックしたい場合は createElement メソッドに、プロパティ値が更新されたタイミングでチェックしたい場合は updateElement メソッドにバリデーションエラーメッセージを表示するロジックを追加します。
1234567if (チェック処理) {properties.setValidationError(プロパティ名,メッセージ,メッセージを強制的に表示するか否かのフラグ);}
setValidationError メソッドに指定する引数は以下のものです。
プロパティ名 | プロパティ名を指定します。プロパティ名とはエレメント配置時に表示されるエレメント固有プロパティを指します。詳細についてはこちら をご参照ください。 |
メッセージ | バリデーション時に表示するメッセージを指定します。 |
メッセージを強制的に表示するか否かのフラグ | false を指定した場合、デザイナの標準機能でメッセージが表示されます。 true を指定した場合は、このメソッドで指定したメッセージが強制的に表示されます。 |
3. バリデーションエラーメッセージをクリアする方法
バリデーションエラーメッセージをクリアするサンプルを紹介します。
1 2 3 |
if (チェック処理) { properties.clearValidationError(プロパティ名); } |
clearValidationError メソッドに指定する変数について説明します。
プロパティ名 | プロパティ名を指定します。プロパティ名とはエレメント配置時に表示されるエレメント固有プロパティを指します。詳細についてはこちら をご参照ください。 |
以上で、完了です。