Aura Componentでレコード保存成功時にコンポーネントをリロードする方法

By | May 11, 2023

概要

e.force:editRecordによるレコード保存成功後にコンポーネントをreloadする(ことで、編集内容をコンポーネントに即時反映する)にはどうすればよいか

関連するIdea

IdeaExchange:Lightning components: ability to handle force:recordSaveSuccess or similar event

結論

レコード保存成功時にはToast Messageが表示されるため、このイベントをlistenすればよい。具体的には、AuraComponentのコンポーネントとコントローラーのそれぞれに以下のコードを追加することで対応可能である。

◼️コンポーネント

<aura:handler event="force:showToast" action="{!c.refreshCmp}"/>

◼️コントローラー

refreshCmp: function(component, event, helper) {
        $A.get('e.force:refreshView').fire();
    }

機能しなかったソリューション

<aura:handler event="force:refreshView" action="{!c.doInit}" />

おすすめ記事

プログラマ38の日記 – alesforce: Lightningページ上に配置したコンポーネントでよく使う aura:hander