こんにちは、アピリオ北嵐です。LWC入門(3)で説明しましたように、Lightning Web Components(以下、LWCと記述)の開発は Salesforce CLI を使って行います。今回はこのCLI(コマンドライン・インターフェース)にスポットを当ててみたいと思います。Salesforce CLIは従来はAPIでのみ提供されていたSalesforceサーバーに対する様々な機能をコマンド形式で実行できる環境であり、Winter’18で正式にリリースされました。CLIを使うことで下記のようなことが実現できます(Spring'19時点)。
- 開発およびテスト環境の作成
- ソースコードの同期
- テストの実行
- アプリケーション・ライフサイクル全体の制御
今回はLWCの開発に使用するコマンドを中心に説明していきたいと思います。
Salesforce CLI はnodejsで開発されており、npm(nodesjのパッケージ管理ツール)のパッケージとしてローカル環境に導入します。Mac または Windows環境への導入手順についてはこちらを参照してみて下さい。また、コマンドは全てDXプロジェクトのルートフォルダから実行するようにしてください。
ログイン
Salesforce CLIではコマンド実行毎に明示的に認証を実行するわけではなく、一度認証を行った後は認証情報をローカル環境に保持しておき、それを参照する形でコマンドを実行します。
下記のコマンドを実行するとブラウザが開いて、いつものログイン画面が表示されますので、ご自身のSalesfroceアカウントを使ってログインして下さい。エイリアスには任意の名前を利用可能です。
sfdx force:org:list
=== Orgs ALIAS USERNAME ORG ID CONNECTED STATUS ──────── ──────────────────────────────── ────────────────── ──────────────── nkitaarashi@appirio.com.nmopjt 00Dp0000000DQVnEAO Connected DevHub nkitaarashi-ewfa@force.com 00DB0000000TbakMAC Connected devsand nkitaarashi-qkvp@force.com 00DB0000000EarSMAS Connected testsand1 nkitaarashi@appirio.com.test 00DO00000055ySjMAI invalid_grant
Salesforce組織をオープン
コマンドを使って登録済みの組織をブラウザ上で開くことができます。
sfdx force:org:open -u alias
Salesforce DXプロジェクトの作成
Salesforce DXによるスクラッチ組織を使った開発に加えて、LWCの開発を行う際にもDXプロジェクトの作成が必要です。下記のコマンドでローカル環境にDXプロジェクトを作成します。
リソースの作成
DXプロジェクト内のローカル環境にリソース(Apexクラス、Lightningコンポーネント)を作成するには、下記のコマンドを実行します。
-d 配置パス
リソースの送信と取得
SandboxやDeveloper組織からリソース(Apexクラス、Lightningコンポーネント)の取得・更新を行うには、下記のコマンドを実行します。いくつかの方法があります。
※ スクラッチ組織にはこれらのコマンドを使うことはできません。代わりに push/pull を使います
メタデータのタイプを指定して送信(任意のタイプを指定可)
フォルダを指定して送信(ファイル名の指定も可)
メタデータのタイプを指定して受信(任意の対応を指定可)
フォルダを指定して受信(ファイル名の指定も可)
LWC コンポーネントの削除
Salesforceサーバー上の画面操作ではLWCコンポーネントは削除できないため、下記コマンドを使って削除します。
バージョンのアップデート
CLIはできるだけ最新バージョンを使った方が良いので、定期的にバージョンアップしましょう。
sfdx update
おわりに
今回はLWC開発に使用する基本的なCLIコマンドを紹介しました。他にも様々なコマンドが提供されていますので、詳しくは公式のコマンド・リファレンスを参照してください。
■ Lightning Web Components 入門(全5回)シリーズは下記のリンクからご覧いただけます。
・ Lightning Web Components入門(1)Aura Components からLightning Web Componentsへ
・ Lightning Web Components入門(2)LWCの基本的な構成
・ Lightning Web Components入門(3)コンポーネントの実装方法
・ Lightning Web Components入門(4)Salesforce CLI
・ Lightning Web Components入門(5)応用編
著者について
Naoki Kitaarashi のコンテンツをもっと見る