我正在构建一个应用程序,该应用程序将object_1发布到表中,然后收集插入json响应中的ID。之后,我要发布另一个object_2,该对象也使用我的第一个对象插入的ID,但是问题是,插入的ID始终未定义
//******** The interface **********
export interface PostResult__ {
fieldCount: number;
affectedRows: number;
insertId: number;
serverStatus: number;
warningCount: number;
message: string;
protocol41 : boolean;
changedRow :number;
}
//***** The service : ***********
export class AdressePostaleService {
constructor(private http: HttpClient) {}
addAdressePostale(adressepostale: AdressePostale): Observable<PostResult__>
{
return this.http.post<PostResult__>
(environment.apiUrl+'/api/adressespostale', adressepostale).pipe(
catchError(this.handleError)
);
}
}
********* The component / The function that post the object ***************
PostID : PostResult__[]=[];
//Function Ajouter Agence dans la BDD
AjouterAdresse(){
//Créer l'adresse postale
this._AdressePostale.Numero=this.firstFormGroup.value.Num_adresse;
this._AdressePostale.Voie=this.firstFormGroup.value.Voie_adresse;
this._AdressePostale.ID_Ville = this.VilleSelec.ID_Ville;
this.adresseservice.addAdressePostale(this._AdressePostale).subscribe(
adresse__=> this.PostID.push(adresse__));
console.log(this.PostID[0]);
}
实际结果: console.log(this.PostID [0]); =未定义
执行结果: console.log(this.PostID [0]); =具有最后一个insertID的json文件
答案 0 :(得分:0)
<Bike/>
是异步的。 Subscribe
在Console.log
完成之前正在运行,请将subscribe
移到console.log
块内。
subscribe
}