カルマユニットテストをしているときにこの問題があります。 ReferenceError:Angular 5カルマユニットテストでFBが定義されていません
Failed: Uncaught (in promise): ReferenceError: FB is not defined
は、私はすでにのindex.htmlファイルに次のスクリプトを追加しました:
<script type="text/javascript" src="https://connect.facebook.net/en_US/sdk.js"></script>
これは私のauth.service.ts
ファイルです。
constructor(
private http: HttpClient,
private fb: FacebookService
) {
this.token = localStorage.getItem('token');
if (this.token) this.isLoggedIn = true;
else this.isLoggedIn = false;
let initParams: InitParams = {
appId: environment.FACEBOOK_APP_ID,
xfbml: true,
version: 'v2.8'
};
fb.init(initParams);
}
ユニットテストを行っているときに、https://connect.facebook.net/en_US/sdk.js
ファイルがまったく読み込まれません。
この問題を解決するにはどうすればよいですか?
ありがとうございました。
files: [
'https://connect.facebook.net/en_US/sdk.js'
],
crossOriginAttribute: false,
そしてをあなたのテストをasync
INモードNOTを行っていることを確認してください:あなたは、次のようにkarma.config.js
でfiles
設定を追加することにより、ENVをテストカルマに外部のJavaScriptファイルをロードする必要があり
これはindex.htmlファイルに追加したスクリプトコードです。 –
はこのスクリプトですメインJSファイルの上に追加されたファイルです。つまり、FBオブジェクトを呼び出す前にこのファイルを追加する必要があります。 –
質問に記載されているエラーを追加してください。人々はしばしば画像へのリンクをたどらない。 – Marcel50506