やっほー
Angularの「global is not defined」エラー対処法!

Angularの「global is not defined」エラー対処法!

  • 2018年12月23日
  • 2021年3月20日
  • Angular
  • 316view

Angular7で開発中のことです。以下のようなエラーが出ました。

Uncaught ReferenceError: global is not defined」。

殺意が芽生えますが、いったん落ち着いて対処法を検討してみました。

Angularプロジェクトの新規作成方法はこちら

Angular7で新規プロジェクトを作りたい! Angularでプロジェクトを作成するのは非常に簡単です! ということで今回は、Angular7で新規プロジェクトを作成する方法を解説します! 前提 前提として、以下がインスト[…]

超簡単!Angular7で新規プロジェクトを作成する方法!

「Uncaught ReferenceError: global is not defined」エラーとは?

僕の場合だと、「Angular×Cognito」の処理を実装するために、以下に記載のライブラリを入れておかしくなりました。

  • amazon-cognito-identity-js
  • aws-sdk
関連記事

Angular7でCognito認証を実装したい。 でも、よう分からん! ということで、様々なサイトを参考に、ログイン処理やAPI処理をAngular7で実装してみました。 [sitecard subtitle=Angular[…]

Angular7×Cognitoでログイン・API処理を実装!

「Uncaught ReferenceError: global is not defined」エラーの内容

実際に出たエラーの内容です。

「Uncaught ReferenceError: global is not defined」に対処するには

global is not defined」を直訳すると、「globalが定義されていない」となります。

つまり、globalをどこかしらに定義してあげればよいわけですね。

globalってなんだよ。

「polyfills.ts」に「global」を定義する

Angularアプリのルートに「polyfills.ts」というファイルがあります。

このファイルの最後に「(window as any).global = window;」を記載します。

これでエラーが消えます。ちゃんちゃん。

「Buffer is not defined」と出たら

ついでですが、「Buffer is not defined」というエラーが出ることもあります。

これも同じく「polyfills.ts」の最後にBufferを定義してあげれば解決します。

これで完璧。

おすすめ本

Angularの勉強をするならこの2冊がおすすめです!

まとめ

Angularはバージョンがコロコロ変わるせいで、よからぬエラーが出たりしますね。

殺意しか生まれませんが、落ち着いて考えたらそんなに難しいことでもありません。

今回も2行ほどしか追加してないですからね。

日々勉強です。

Angularの「global is not defined」エラー対処法!
フォローしてもらえると泣いて喜びます