Angular + Amazon-Cognito-identity-js,我为什么会出错:全局未定义

时间:2018-09-05 00:33:51

标签: angular aws-cognito

从命令行:

ng new sandbox
cd .\sandbox\
ng serve

打开http://localhost:4200/。可以。

npm install --save amazon-cognito-identity-js

\src\app\sign-up\sign-up.component.ts内添加以下代码行:

import * as AmazonCognitoIdentity from 'amazon-cognito-identity-js';

添加一个构造函数:

  constructor() {
    new AmazonCognitoIdentity.CognitoUserPool({});
  }

刷新http://localhost:4200/

页面为空白。控制台错误:

Uncaught ReferenceError: global is not defined
    at Object../node_modules/buffer/index.js (index.js:43)
    at __webpack_require__ (bootstrap:76)
    at Object../node_modules/amazon-cognito-identity-js/es/AuthenticationHelper.js (AuthenticationHelper.js:1)
    at __webpack_require__ (bootstrap:76)
    at Object../node_modules/amazon-cognito-identity-js/es/index.js (index.js:1)
    at __webpack_require__ (bootstrap:76)
    at Object../src/app/app.component.ts (main.js:94)
    at __webpack_require__ (bootstrap:76)
    at Object../src/app/app.module.ts (app.component.ts:9)
    at __webpack_require__ (bootstrap:76)

解决此错误的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

将其放在/src/polyfills.ts的最后一行

(window as any).global = window
相关问题