実務でLWCでカスタム表示ラベルを使用した際にうまくインポートできずいろいろ調べた結果「c.」を付けるとインポートできた。
import myLabel from '@salesforce/label/c.My_Custom_Label';
で、この c. って何? っていう疑問が発生したので調べてみた。
c. の意味
結論から言うと、c. は custom(カスタム)の略で、自分の組織で作ったカスタム表示ラベルを表しているらしい、
LWCでラベルを使うときの構文はこうなる。
import LabelName from '@salesforce/label/c.Label_API_Name';
@salesforce/label→ Salesforceのラベルモジュール
c.→ 自分の組織で作ったカスタムラベル
Label_API_Name→ ラベルのAPI名
c.以外のパターン
基本的にC.になるがマネージドパッケージのラベルを使う場合だけ変化する。
以下はabc__マネージドパッケージの名前空間を指定するときの例となる。
import myLabel from '@salesforce/label/abc__My_Custom_Label';
LWC以外でのカスタム表示ラベル使用例
ちなみにLWC以外だと以下のようになる
- Apex →
$Label.My_Custom_Label
- Visualforce →
{!$Label.My_Custom_Label}
- LWC →
@salesforce/label/c.My_Custom_Label
