Lightning Out の考慮事項と制限
認識しておくべき問題は、2 つのカテゴリに分類できます。
Lightning Out の使用に関する考慮事項
Lightning Out アプリケーションは Salesforce コンテナの外部で実行されるため、いくつかのことに留意し、場合によっては対処する必要があります。
1 つ目に、Lightning コンポーネントは、ユーザのブラウザの Cookie 設定に連動します。Lightning Out は Salesforce の外部で Lightning コンポーネントを実行するため、これらの Cookie は「サードパーティ」Cookie となります。ユーザは、ブラウザ設定でサードパーティの Cookie を許可する必要があります。
最も影響が大きくて明白な問題は、認証です。認証を処理する Salesforce コンテナがないため、自分で処理する必要があります。この重要なトピックは「Lightning Out からの認証」で詳しく説明しています。
もう 1 つの重要な考慮事項は、それほど明白ではありません。アプリケーションでサポートされる多くの重要なアクションは、さまざまな Lightning イベントを起動することによって実現されます。ただし、イベントは森の中で倒れる���のようなものです。誰も耳を澄ましていなければ、効果はあるでしょうか? 多くの主要な Lightning イベントの場合、「リスナー」は Lightning Experience または Salesforce アプリケーションのコンテナである one.app です。そして、イベントを処理する one.app がなければ、実際にイベントは無効です。それらのイベントを起動しても、エラーを表示せずに失敗します。
Lightning Out では、Lightning コンソール JavaScript API はサポートされていません。
標準コンポーネントの制限事項
Lightning Out の主要機能は安定しており、完成していますが、その他の Salesforce 機能とのインタラクションについては、まだ開発中のものがあります。
そのうちで主要なものは、Lightning コンポーネントフレームワークに組み込まれた標準コンポーネントです。Lightning Out、および Lightning Out に基づく Visualforce の Lightning コンポーネントなどの多くの標準コンポーネントは、スタンドアロンコンテキストで使用すると正しく動作しません。これは、コンポーネントが、one.app コンテナで使用できるリソースに暗黙的に連動するためです。
所有するコンポーネントのすべての連動関係を明示的にすることで、この問題を避けることができます。ltng:require を使用して、コンポーネント自体に埋め込まれていない必要な JavaScript リソースおよび CSS リソースをすべて参照します。
アプリケーションで標準コンポーネントを使用している場合、Lightning Out または Visualforce の Lightning コンポーネント で使用されているときに、スタイルや動作が記載されているとおりでないことがあります。