Part 8です。「lightning Commands」から続けます。
lightning Commands
Lightning Web および Aura コンポーネントを操作するコマンドです。
lightning generate app
Lightning アプリケーションを生成します。
// 現在のディレクトリに「myapp」という Lightning アプリケーションバンドルのメタデータ ファイルを生成します。 sf lightning generate app --name myapp // 「force-app/main/default/aura」ディレクトリにファイルを生成します。 sf lightning generate app --name myapp --output-dir force-app/main/default/aura
使うべきはディレクトリ指定している方になるかと思います。実行結果は次のような感じです。
枠のみ作成される感じとなります。
lightning generate component
Lightningコンポーネントを作成するコマンドです。通常はAuoraコンポーネントでlwcパラメータでwebコンポーネントが作れます。
// 現在のディレクトリに Aura コンポーネントバンドルのメタデータファイルを生成します。 sf lightning generate component --name mycomponent // 現在のディレクトリに Lightning Web コンポーネントバンドルを生成します。 sf lightning generate component --name mycomponent --type lwc // 「force-app/main/default/aura」ディレクトリに Aura コンポーネントバンドルを生成します。 sf lightning generate component --name mycomponent --output-dir force-app/main/default/aura // 「force-app/main/default/lwc」ディレクトリに Lightning Web コンポーネントバンドルを生成します。 sf lightning generate component --name mycomponent --type lwc --output-dir force-app/main/default/lwc
実行結果です。Lightniingコンポーネントの生成がうまくいきました。
lightning generate event
Lightning イベント バンドルを生成します。
// 現在のディレクトリに「myevent」という Lightning イベントバンドルのメタデータ ファイルを生成します。 sf lightning generate event --name myevent // 「force-app/main/default/aura」ディレクトリにファイルを生成します。 sf lightning generate event --name myevent --output-dir force-app/main/default/aura
実行結果です。
lightning generate interface
Lightning インターフェースを生成します。
// 現在のディレクトリに「myinterface」という Lightning インターフェースバンドルのメタデータファイルを生成します。 sf lightning generate interface --name myinterface // 「force-app/main/default/aura」ディレクトリにファイルを生成します。 sf lightning generate interface --name myinterface --output-dir force-app/main/default/aura
実行結果です。
lightning generate test
Lightning テストを生成します。
// 現在のディレクトリに MyLightningTest という Lightning テストのメタデータ ファイルを生成します。 sf lightning generate test --name MyLightningTest // 「force-app/main/default/lightningTests」ディレクトリにファイルを生成します。 sf lightning generate test --name MyLightningTest --output-dir force-app/main/default/lightningTests
実行結果です。
generateコマンドということでファイル生成が行なえます。これ自体ではローカル上に作成されるのみでSalesforce組織には作成されません。
limits Commands
組織の制限を表示できるコマンドです。たぶん利用場面は結構多いと思います。
limits api display
組織内の制限に関する情報を表示します。
// デフォルト組織での表示制限: sf limits api display // エイリアス「my-scratch-org」を使用して組織内の制限を表示します。 sf limits api display --target-org my-scratch-org
見方ですが、MAXは上限ですが、Remainingは残り利用可能な数値です。例えばActiveScratchOrgsが4となっています。これは有効なスクラッチ組織が1つ使用しているので残り4つ利用可能という意味です。(最初左側は現在の使用数だと思ってほとんどMAXと同じ値だって勘違いしました。)
limits recordcounts display
組織内の標準オブジェクトまたはカスタムオブジェクトのレコードのおおよその数を取得できるコマンドです。
// デフォルト組織で利用可能なすべてのレコード数を表示します。 sf limits recordcounts display // デフォルト組織の取引先、取引先責任者、リード、商談オブジェクトのレコード数を表示します。 sf limits recordcounts display --sobject Account --sobject Contact --sobject Lead --sobject Opportunity // エイリアス「my-scratch-org」を持つ組織の Account オブジェクトと Lead オブジェクトのレコード数を表示します。 sf limits recordcounts display --sobject Account --sobject Lead --target-org my-scratch-org
実行結果です。データストレージの消費が多くなったときにどのオブジェクトが消費しているかをチェックできて便利そうでした。(組織情報のページでも確認できますがもう少しサクッとチェックできそう。)
login Commands
組織へのログインを実行できるコマンドです。ただ、Salesforceログインについてはもう非推奨となりました。今後は「sf org login」のorgコマンドを使用します。(Salesforce Functionsではまだ使用するようです。)
logout Commands
ログインと同じくSalesforce組織に対しては「sf org logout」が用意されたのでそちらを使用します。
sf logoutみたいに実行してもWarningメッセージが表示されてorg コマンドを使ってくださいとなります。
Part 8 のまとめ
「lightning Commands」「limits Commands」「login Commands」「logout Commands」をチェックしました。ログインとログアウトはSalesforce Functionsを使っていなければもう必要なさそうです。LightningコマンドもVSCodeのライトニングコンポーネント作成機能でやれるのでそこまで使う場面はなさそう。Limitコマンドは慣れれば使えそうかなと思います。