我试图在Angular 6中访问一个名为date
的JSON对象的属性。我为其分配了变量,但它看起来像是未定义的。
这是我的代码:
getHistorial(dateB:string, dateA:string){
this._HistorialService.query(dateB, dateA).subscribe(response=>{debugger
if(response.Historial){
var test =response.Historial.fecha
console.log(test);
}
error=>{
console.log(<any>error);
}
});
}
我正在尝试:
var test = response.Historial.map(fecha);
var test = response.Historial.pipe(map(fecha));
我正在使用Angular 6和Node上的API。
这是包含整个响应的json
Historial: Array(7)
0: {_id: "5c8d7ede252e5631b030a59c", nombre: "urea", cantidad: 5, unidadMedida: "Unds", fecha: "201903161755", …}
1: {_id: "5c8d7eea252e5631b030a59d", nombre: "urea", cantidad: 58, unidadMedida: "Unds", fecha: "201903161755", …}
2: {_id: "5c8d8088252e5631b030a5a0", nombre: "urea", cantidad: 5, unidadMedida: "Kgs", fecha: "201903161802", …}
3: {_id: "5c8d8091252e5631b030a5a1", nombre: "urea", cantidad: 51, unidadMedida: "Kgs", fecha: "201903161802", …}
4: {_id: "5c8d85ef252e5631b030a5a2", nombre: "urea", cantidad: 7, unidadMedida: "Kgs", fecha: "201903161825", …}
5: {_id: "5c8df263252e5631b030a5a4", nombre: "sulfato de amonio", cantidad: 8, unidadMedida: "Kgs", fecha: "201903170208", …}
6: {_id: "5c8ea35832c85438bcecd7ed", nombre: "urea", cantidad: 2, unidadMedida: "Kgs", fecha: "201903171443", …}
答案 0 :(得分:0)
您尝试执行的操作将无法正常工作,因为响应已不再可见。为了使用任何运算符,您需要在订阅之前应用它。另一个选择可能是,使用Observable.from(response)...其余所有运算符并再次订阅
我在这里创建了一个小型堆叠闪电战:https://stackblitz.com/edit/rxjs-j4sonn?embed=1&file=index.ts
您可以执行以下操作来获取“ fecha's”列表,例如:
getHistorial(dateB:string, dateA:string){
this._HistorialService.query(dateB, dateA)
.pipe(map(results => results.fecha))
.subscribe(fecha =>{
if(fecha){
console.log(fecha);
}
error=>{
console.log(<any>error);
}
});
}