Lighntingコンポーネントのアクション埋め込みを試してみました。下記の宣言をするとアクション内で呼び出すことができます。
implements="force:lightningQuickAction"
すごいざっくりこんな感じ。
やってみてわかったのですが、アクション内で呼び出す場合は保存ボタンなどは通常のアクションとは違う位置に配置する必要がでてきました。
検索したところ要望は出ていましたが実現はされていないみたい。
save button when using force:lightningQuickAction - Ideas - Salesforce Trailblazer Community
今回はまぁいいかと進めました。次に課題となったのは保存ボタンで処理終わったときのポップアップクローズと画面リフレッシュです。検索したところやり方が紹介されてました。
salesforce.stackexchange.com
ざっくりこんな感じ。
({ handleClick : function(component, event, helper) { // ポップアップクローズ $A.get("e.force:closeQuickAction").fire(); // 画面リフレッシュ $A.get('e.force:refreshView').fire(); } })
これで、ボタンクリック→Apex処理実行→ポップアップクローズ→画面リフレッシュという流れの機能の開発ができました。Apex実行含むサンプルについては別の機会にまとめたいと思います。