デフォルト項目値を含むレコードの作成ページへの移動
事前入力された項目値を含むレコードの作成ページを起動するには、lightning/pageReferenceUtils
と lightning/navigation
を一緒に使用します。
lightning/pageReferenceUtils
モジュールには、デフォルト項目値を文字列に符号化および復号化するための encodeDefaultFieldValues()
関数と decodeDefaultFieldValues()
関数が用意されています。符号化文字列を standard__objectPage
ページ参照の pageReference.state.defaultFieldValues
属性に割り当てます。
標準アクションでは、デフォルト項目値が URL を介して文字列としてオブジェクトに渡され、リダイレクトと置換が自動的に処理されます。上書きアクションでは、URL から受け取ったデフォルト項目値の文字列の復号化の処理はユーザが行います。
lwc-recipes サンプルリポジトリの navToNewRecordWithDefaults
コンポーネントを参照してください。
この例では、事前入力されたデフォルト値でレコードの作成ページを起動します。
この HTML の例には、取引先責任者を作成するリンクが含まれています。
デフォルト項目値を文字列に復号化するには、encodeDefaultFieldValues()
に渡します。符号化文字列をページ参照の state.defaultFieldValues
属性に割り当てます。
標準アクション動作をカスタムソリューションで上書きするには、モジュールを Aura コンポーネント内にラップします。
lwcNewAccountOverride
コンポーネントには、デフォルト項目値を表示する新規取引先レコードページ用のフォームが含まれています。
上書きアクションでは、URL から受け取ったデフォルト項目値の文字列の復号化の処理はユーザが行います。
次の例では、CurrentPageReference
を使用して state
からデフォルト項目値を読み取り、符号化文字列を取得します。次に、文字列を decodeDefaultFieldValues()
に渡して復号化し、取引先の作成を処理します。
次の例は、lightning-record-edit-form
を使用した項目値の事入力に似ていますが、フォームに移動すると defaultFieldValues
が動的に生成されます。
すべての復号化されたデフォルト項目値は、文字列としてレコード作成ページに渡されます。たとえば、35000
は数値データ型ではなく、文字列としてページに渡され、Boolean 値 true
および false
は文字列として渡されます。
このコードを使用するには、[設定] から「オブジェクトマネージャ」と入力します。取引先オブジェクトで、CustomCheckbox__c
という API 参照名のチェックボックス項目を作成します。次に、[ボタン、リンク、およびアクション] を選択して [新規] アクションを編集します。[Lightning Experience の上書き] で、[Lightning コンポーネント] を選択し、c:auraOverrideWrapper
コンポーネントを選択します。
関連トピック