Я хочу найти () s_id из этого JSON:
{
"StatusCode": 0,
"StatusMessage": "OK",
"StatusDescription": [
{
"s_id": "11E8C70C8A5D78888E6EFA163EBBBC1D",
"s_serial": "PkMGo",
"active": 0,
},
{
"s_id": "11E8C70FB9D10DB38E6EFA163EBBBC1D",
"s_serial": "UgooX",
"active": 0,
},
{
"s_id": "11E8C7179F85836D8E6EFA163EBBBC1D",
"s_serial": "IiLnM",
"active": 0,
}, .....
{
"s_id": "11E8C71905123F1A8E6EFA163EBBBC1D",
"s_serial": "LVpcP",
"active": 0,
}
}]}
Я пытаюсь найти в этом, но возвращаю неопределенное.
sensors: Sensors[]=[];
hbp: HBP;
sensor: Sensors;
this.ss.getAllS().subscribe(
sensors => {
this.sensors = sensors
let ss = this.sensors.find(x => x.s_id === this.hbp.s_id);
console.log(ss)
if (ss) {
this.selectedSensor = ss.s_id
}
}
);
и
selectedSensor : string = this.sensors.filter(
x => x.s_id === this.sensor.s_id[0])
.map(y => y.s_serial).join('');
Я думаю, что у меня есть проблема в этой строке:
let ss = this.sensors.find(x => x.s_id === this.hbp.s_id);
, потому что, hbp возвращает этот json:
active: 0
homebox_id: "11E8C71154CC8C188E6EFA163EBBBC1D"
sensors: Array(2)
0: {s_serial: "s_id", s_id: "11E8C70C8A5D78888E6EFA163EBBBC1D"}
1: {s_serial: "UgooX", s_id: "11E8C70FB9D10DB38E6EFA163EBBBC1D"}
и в этой строке, возможно, найдет внутри этих датчиков
Это selectedSensor
Я использовал в html-код
<input formControlName="s_id" type="text" placeholder="Select " [(ngModel)]="selectedSensor" aria-label="Number" matInput
[matAutocomplete]="auto">
Как вернуть данные?
Можете ли вы спросить меня, пожалуйста, какая идея?