CanActivate: наблюдаемое логическое значение с прослушивателем Socket - PullRequest
0 голосов
/ 03 сентября 2018

Я пытаюсь получить свойство из сокета с сервера, как это

isVerified() {
    this.socket.emit('verify');

    return new Observable<boolean>(observer => {
        this.socket.on('isVerified', data => {
            observer.next(data)
            observer.complete()
        })
    })
}

данные будут либо возвращать истину, либо ложь, поэтому в моем охраннике маршрута у меня есть это

canActivate(): Observable<boolean> {
    this._chat.isVerified()
        .subscribe(
            res => {
                return res
            },
            err => console.log(err)
        )
}

но он говорит мне: "Функция, объявленный тип которой не является ни void, ни any, должна возвращать значение". и я ломал голову, пытаясь понять, как сделать эту работу, и я прочитал множество других вопросов безрезультатно. Журнал консоли Res дает мне истину или ложь.

1 Ответ

0 голосов
/ 03 сентября 2018

canActivate тип возврата Наблюдаемый | Обещание | булево

Таким образом, вы должны вернуть наблюдаемое в вашем случае:

canActivate(): Observable<boolean> {
    this._chat.isVerified();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...