Angular2 - 在可观察内容更新后执行代码

时间:2016-09-07 13:34:31

标签: angular typescript observable

我需要创建一个从HTTP服务获取数据的例程,并填充<form>,然后在生成的表单上自动调用submit()

<form  target="_top" #paymentForm action="{{payment?.Url}}" method="POST">
<input  *ngFor="let d of payment?.Data | keys" name="{{d}}" value= {{payment.Data[d]}}>
</form>

要填充此表单,我会收到一个返回付款对象的请求,其中包含要发布的网址和表单数据:

this.globalsService.PlaceOrder(this.globalsService.ShoppingCart)
    .subscribe(res => {
                this.payment = res; 
                this.paymentForm.nativeElement.submit()
         });

即使代码执行成功并且所有数据最终都正确加载到表单中,但在执行submit()操作时,表单尚未填充,因此重定向错误且所有值都是mmissing。

我正在寻找一个优雅的解决方案,不涉及setTimeout,重定向到另一个路由或使用生命周期钩子。

0 个答案:

没有答案