У меня проблема при попытке присвоить возвращаемое значение из службы компоненту.
ngOnInit() {
this.getInspectionData();
}
getInspectionData() {
this.auctionService.getInspectionResult(`df570718-018a-47d8-97a2-f943a9786536`)
.subscribe(data => {
console.log(`this is data returned: `, data);
}, error => {
console.log('failed to get data', error);
}, () => {
console.log('getInspectionResult successfully processed');
});
}
Он успешно получил возвращаемое значение в console.log
console.log результат
внутри subscribe()
.Кажется, нет проблем.даже я установил переменную console.log внутри subscribe()
:
.subscribe(data => {
this.inspectionResult = data;
console.log(`value from getInspectionData: `, this.inspectionResult);
это дало this.inspectionResult
вывод правильно.
это должно быть правильно, верно?и затем я добавляю this.inspectionResult = data;
но ....
когда я проверяю это, переменная ошибается и получает '{}'
.код ниже:
ngOnInit() {
this.getInspectionData();
console.log(`value from getInspectionData: `, this.inspectionResult);
}
getInspectionData() {
this.auctionService.getInspectionResult(`df570718-018a-47d8-97a2-f943a9786536`)
.subscribe(data => {
this.inspectionResult = data;
}, error => {
console.log('failed to get data', error);
}, () => {
console.log('getInspectionResult successfully processed');
});
}
это результат
кстати, я назначил переменную следующим образом:
inspectionResult: InspectionResult = <InspectionResult>{};
inspectionResultData: InspectionResultData = <InspectionResultData>{};
мой вопрос:
- Почему значение данных не присваивается
this.inspectionResult
? - Почему ngOnInit () не дает ожидаемый способ вывода?(
console.log()
in ngOnInit()
должен запускаться после getInspectionData();
)