Angular 角度:类型为'的参数;无效';不可分配给类型为';(值:UserCredential)=>;用户凭证|承诺式<;用户凭证>';

Angular 角度:类型为'的参数;无效';不可分配给类型为';(值:UserCredential)=>;用户凭证|承诺式<;用户凭证>';,angular,firebase,firebase-authentication,Angular,Firebase,Firebase Authentication,注册成功后,我尝试开始一种新方法。不幸的是,webstorm显示了此错误: 类型为“void”的参数不能分配给类型为“(值:UserCredential)=>UserCredential | PromiseLike”的参数 这是我的密码: @Injectable() export class AuthService { constructor(private router: Router) {} signUp(email: string, password: string)

注册成功后,我尝试开始一种新方法。不幸的是,webstorm显示了此错误:

类型为“void”的参数不能分配给类型为“(值:UserCredential)=>UserCredential | PromiseLike”的参数

这是我的密码:

@Injectable()
export class AuthService {

    constructor(private router: Router) {}

    signUp(email: string, password: string) {

        firebase.auth().createUserWithEmailAndPassword(email, password)
            .then(this.goPersonalData());
    }

    login(email: string, password: string) {
        firebase.auth().signInWithEmailAndPassword(email, password)
            .then(success => console.log('its working todo next, goto Main PAge'));
    }

    goPersonalData() {
        this.router.navigate(['/personalData']);
    }
}
它发生在这一行:

      this.goPersonalData()

将注册方法修改为:

@Injectable()
export class AuthService {

    ...

    signUp(email: string, password: string) {

        firebase.auth().createUserWithEmailAndPassword(email, password)
            .then((res) => {
                this.goPersonalData();
            });
    }

    ...
}

this.goPersonalData()
不会返回任何内容,那么您希望
如何处理它呢?阅读错误消息,它告诉你问题出在哪里
。然后,
需要一个返回
UserCredential
的回调或一个承诺。Dominik您也可以投票回答:)当然,对不起,谢谢