Lightning Web Components (LWCs) are the best choice for creating custom UI components in Salesforce. They provide robust features such as event handling and server-side communication, allowing for validation of user input before saving data. Reference:Lightning Web Components Documentation
最新のコメント (最新のコメントはトップにあります。)
GenerativeAI - 2025-11-19
正解は Lightning Web Components (LWC) です。
領域の確認 領域: 3. ユーザーインターフェース (User Interface)
トピック: Lightning Web Components (LWC)、入力検証 (Input Validation)、クライアントサイド処理
最新のコメント (最新のコメントはトップにあります。)
正解は Lightning Web Components (LWC) です。
領域の確認
領域: 3. ユーザーインターフェース (User Interface)
トピック: Lightning Web Components (LWC)、入力検証 (Input Validation)、クライアントサイド処理
解説
なぜ Lightning Web Components (LWC) なのか?
この問題の最大のポイントは 「情報をデータベースに保存する前にユーザー入力を検証できる」 という要件です。これには、サーバー(Salesforceデータベース)にデータを送る前に、ブラウザ上(クライアントサイド)でチェックを行うことが求められます。
LWC は最新の Web 標準(HTML, JavaScript)に基づいて構築されており、以下の理由からこの要件に最適なテクノロジーです。
クライアントサイドでの検証 (Client-side Validation): LWC は JavaScript を使用してブラウザ上で動作します。ユーザーが入力した瞬間に、あるいは「保存」ボタンを押した瞬間に、JavaScript ロジックで入力値をチェックできます。これにより、無駄なサーバー通信(Apexの呼び出し)を防ぎ、即座にユーザーにエラーを表示できます。
標準コンポーネントの機能: LWC の標準コンポーネントである <lightning-input> などは、属性を設定するだけで、必須チェック (required) や形式チェック(メールアドレス、日付など)を自動的に行う機能を内蔵しています。
パフォーマンス: 従来の Aura コンポーネントや Visualforce よりも軽量で高速に動作し、ユーザー体験(UX)が優れています。
他の選択肢が「最適」ではない理由
Visualforce: 従来のページ中心の技術です。検証を行うには、一度サーバーに送信するか、複雑なカスタムJavaScriptを書く必要があり、LWCに比べてパフォーマンスや開発効率が劣ります。
Aura Components: LWC の前身となるコンポーネントフレームワークです。クライアントサイド検証は可能ですが、Salesforce は現在、より高速で標準的な LWC での新規開発を強く推奨しています。
実装イメージ
「保存前に検証する」コードは、LWC では以下のようにシンプルに書けます。
JavaScript
// LWCのJavaScriptコントローラ
handleSave() {
// 1. 画面上のすべての入力項目を取得
const allValid = [...this.template.querySelectorAll('lightning-input')]
.reduce((validSoFar, inputCmp) => {
inputCmp.reportValidity(); // エラーがあれば表...