1
나는 다음과 같은 코드를 가지고 : 나는 데약속 콜백이 사용
private resetPassword() {
this.auth.subscribe(auth => {
this.firebaseRef.auth().sendPasswordResetEmail(auth.auth.email).then(
success => {
this.successMessage = 'A password reset email was sent to ' + auth.auth.email + '. Please follow' +
'the instructions in the email to reset your password.';
},
error => {
console.log(error);
}
)
});
}
문제는 this.successMessage
이 성공에 설정되어 있지 않은지입니다. console.log
을 넣을 수는 있지만 작동 범위는 this
입니다. 내가 할 수있는 한 어디서나 .bind(this)
을 사용해 보았지만 도움이되지 못했습니다. 이견있는 사람?
이것은 Angular2 앱이며 템플릿에 successMessage
이 렌더링되어 있으므로 어떻게 작동하는지 알 수 있습니다. then
외부 메시지를 설정하면 정상적으로 작동하는지 확인했습니다.
"나는 데 문제가 this.successMessage 성공에 설정되지 않는 것입니다"나는
ngZone.run
에this.successMessage
할당을 포장하여이를 해결? 코드가 값을 다시 읽지 않습니다. [mcve]가 * 완료되었는지 확인해야합니다. – Quentin이것은 템플릿에'successMessage'를 표시하고 일어나지 않는 Angular2 앱입니다. 그리고 네, 나는 그 메시지가 '다음'의 외부에 설정되면 제대로 작동한다는 것을 확인했습니다. 나는이 정보로 내 원래 게시물을 업데이 트됩니다. –
@EvanSalter는 값이 설정되지 않고 비동기 동작 후에 각도 응용 프로그램이 업데이트되지 않을 수 있습니다. 'console.log (this)'를'undefined'라고 출력하거나 실제로 successMessage가 설정되었음을 보여 줍니까? – m0meni