ヘッドレスクイックアクションの作成

ヘッドレスクイックアクションでは、Lightning Web コンポーネントでカスタムコードを実行します。画面アクションとは異なり、ヘッドレスアクションではモーダルウィンドウは開きません。

コンポーネントをヘッドレスクイックアクションとして使用できるようにするには、対象を設定します。「クイックアクション用のコンポーネントの設定」を参照してください。

レコードページの他の Lightning Web コンポーネントとは異なり、LWC クイックアクションは connectedCallback()recordId を渡しません。recordId にアクセスする必要がある場合は、コードに recordId の値を設定します。

Lightning Web コンポーネントで、invoke() を常にヘッドレスクイックアクションの公開メソッドとして公開します。invoke() メソッドは、クイックアクションがトリガされるたびに実行されます。

Lightning Web コンポーネントの空のテンプレートを作成します。

長時間実行されるアクションでクイックアクションが並列で複数回実行されないようにするには、内部 Boolean フラグを追加します。

invoke() の戻り値の型は void です。Promise を返すとメソッドが非同期になりますが、返される Promise は無視されます。

次のコードでは、Boolean フラグを使用して二重実行をブロックし、Promise を使用して sleep が完了するのを待機します。戻り値の型が void の場合でも、コードは非同期で実行されます。

Lightning Experience で別のページ、レコード、またはリストに移動するには、ナビゲーションサービスを使用します。

次の例では、取引先責任者ホームページに移動します。

「ページ、レコード、リストへの移動」を参照してください。

クイックアクションからカスタムイベントをディスパッチできます。次の例では、lightning/platformShowToastEvent モジュールによって指定されたイベントを使用して、2 つのトーストを順次ディスパッチします。

「トースト通知」および「イベントを使用した通信」を参照してください。