checIfTrue (): Observable<boolean> => {
this.service2.getInt().subscribe(y => { return y == 1;});
};
У вас есть две функции:
- checkIfTrue ()
- y => {return y == 1; }
У вашей второй функции есть оператор return, у вашего checkIfTrue () нет оператора return. Вот почему он не возвращает значение. Просто в качестве примера, это должно прояснить, почему это не может работать:
// y => y == 1 function dummy
function a() {
return true;
}
// subscribe() dummy
function b(callback: Function) {
callback();
}
function checkIfTrue() {
// your subscribe(y => y == 1) line
b(a);
}
То, что вы ищете, это что-то вроде
checIfTrue (): Observable<boolean> => {
return this.service2.getInt()
.pipe(map(y => y == 1));
};
Вы можете сократить это как:
checIfTrue (): Observable<boolean> => this.service2
.getInt()
.pipe(map(y => y == 1));