让Amazon Cognito使用angular2和typescript

让Amazon Cognito使用angular2和typescript,angular,amazon-web-services,typescript,ionic-framework,amazon-cognito,Angular,Amazon Web Services,Typescript,Ionic Framework,Amazon Cognito,我在试着让Cognito的忘记密码工作 即时通讯使用: Angular2+Typescript+Ionic 我对这个过程相当陌生,但我遵循了从这里找到的快速入门 无论我看起来做了什么,我总是无法读取未定义的属性'CognitoUser',或者类似的错误 从'@angular/core'导入{Component}; 从“离子角度”导入{NavController,LoadingController}; 从“../tabs/tabs”导入{TabsPage}; 从“../signup/signup

我在试着让Cognito的忘记密码工作

即时通讯使用: Angular2+Typescript+Ionic

我对这个过程相当陌生,但我遵循了从这里找到的快速入门

无论我看起来做了什么,我总是无法读取未定义的属性'CognitoUser',或者类似的错误

从'@angular/core'导入{Component};
从“离子角度”导入{NavController,LoadingController};
从“../tabs/tabs”导入{TabsPage};
从“../signup/signup”导入{SignupPage};
从“../confirm/confirm”导入{ConfirmPage};
从“../login/login”导入{LoginPage};
从'@ionic native/Camera'导入{Camera,CameraOptions};
从“../../providers/aws.Cognito”导入{Cognito};
从“../../providers/providers”导入{User};
从'@ionic native/Media Capture'导入{MediaCapture,MediaFile,CaptureError,CaptureImageOptions};
进口{
身份验证详细信息,
CognitoIdentityServiceProvider,
认知用户,
CognitoUserAttribute,
认知用户池
}从“aws认知身份”;
声明:任何;
声明const aws\u cognito\u identity\u pool\u id;
声明const aws_cognito_区域;
var AmazonCognitoIdentity=require('amazon-cognito-identity-js');
var CognitoUserPool=AmazonCognitoIdentity.CognitoUserPool;
var CognitoUser=AmazonCognitoIdentity.CognitoUser;
恢复()
{
AWS.config.region=AWS_cognito_region;
var CognitoUserPool=AmazonCognitoIdentity.CognitoUserPool;
var userData={
用户名:“testuser”,
池:aws\u cognito\u identity\u Pool\u id
};
var cognitoUser=new AWSCognito.CognitoIdentityServiceProvider.cognitoUser(userData);
//在cognitoUser上调用forgotPassword
cognitoUser.forgotPassword({
onSuccess:函数(结果){
log('调用结果:'+结果);
},
onFailure:函数(err){
警惕(err);
},
inputVerificationCode(){//这是可选的,可能不会像AWS的示例中那样实现(即,提示获取信息)
var verificationCode=提示('请输入验证码','');
var newPassword=prompt('输入新密码','');
confirmPassword(验证代码、新密码、此);
}
});
警惕(“它应该已经工作了”);

}
我通过导入我所需的所有内容,按照以下方式进行了分类

    import {
    CognitoIdentityServiceProvider,
    AuthenticationDetails,
    CognitoUserPool,
    CognitoUser,
    CognitoUserAttribute,
    ICognitoUserAttributeData,
    ISignUpResult,
    CognitoUserSession,
  } from 'amazon-cognito-identity-js';

  import * as AWS from 'aws-sdk';
然后在我的函数中使用它

          const userPool = this._getUserPoolData();

          const user = new CognitoUser({ Username: usrLoginDetails.username, Pool: userPool });
          const authenticationData = { Username: usrLoginDetails.username, Password: usrLoginDetails.password };
          const authenticationDetails = new AuthenticationDetails(authenticationData);



            user.authenticateUser(authenticationDetails, {
              onSuccess: result => {
               //success here 
              },
              onFailure: error => {}, //error here,
              newPasswordRequired: () => {},  // no-op
              mfaRequired: () => {},  // no-op
              customChallenge: () => {} // no-op
            });

我测试了它,并让它运行没有任何问题。让我知道这是否适合你

在“amazon cognito identity js”导入/命名-添加amazon cognito identity后未找到错误ISignUpResult-js@Wonderman这是一个非常古老的答案-你可能想检查AWS放大