Salesforce Apexメソッドを使用してLWCからデータベースにアクセスする方法
環境
Salesforce Apex
LWCで呼び出すApexメソッドを作成します。
static
publicまたはglobal
@AuraEnabled
サポートされる引数、戻り値は下記になります。
プリミティブ型: Boolean, Date, DateTime, Decimal, Double, Integer, Long, String.
SObject型: 標準オブジェクト、カスタムオブジェクト
Apexクラス(引数に使用する場合、publicなコンストラクタが必要)
コレクション
apexコード
public without sharing class LwcTestCtrl { @AuraEnabled public static void cancelOrder(Id orderId) { // 処理コード } }
ApexメソッドをJSファイルにインポートします。
import cancel from '@salesforce/apex/LwcSampleCtrl.cancelOrder’;
インポートされた関数はプロミスを返します。
@api recordId; doCancel() { this.showSpinner = true; cancel({ orderId: this.recordId }).then(result => { const event = new ShowToastEvent({ "title": "注文のキャンセルを確定しました", "variant": "success" }); this.dispatchEvent(event); }).catch(error => { this.showErrorToast(); }).finally(() => { this.showSpinner = false; }); }