【发布时间】:2019-02-07 18:08:03
【问题描述】:
我已经从 Web API 公开了嵌套的 json 格式。有人可以帮我从 Angular5 发送相同格式的数据
{"contractId":1,
"contractName":"Temp",
"contractServiceList":[
{"id":1,
"serviceId":{"serviceId":1,"serviceName":"Emergency Room"},
"providerTier":"Tier 1",
"coinsurance":100.0,
"copay":10.0,
"penaltyApplies":"Y",
"penaltyRule":"Non Emergency ER Use",
"penaltyType":"Dollar Amount",
"penaltyValue":300.0,
"deductibleApplies":"Y"
}
]
}
下面是一段代码,它将内部列表“contractServiceList”设为空。如何订阅数据以便获取内部列表中的值
app.component.ts
ngOnInit() {
this.addForm = this.formBuilder.group({
contractName: ['', Validators.required],
serviceName: ['', Validators.required],
copayAmount: ['', Validators.required],
coInsurance: ['', Validators.required],
deductibleApplies: ['', Validators.required],
penaltyApplies: ['', Validators.required],
penaltyRule: ['', Validators.required],
penaltyType: ['', Validators.required],
penaltyValue: ['', Validators.required],
deductibleAppliesPenalty: ['', Validators.required]
});
}
onSubmit() {
this.contractService.saveContract(this.addForm.value)
.subscribe( data => {
alert('Contract created successfully');
console.log(data);
});
}
service.ts
saveContract(contract: Contract) {
return this.http.post(this.baseUrl, contract).pipe(map(res => res.json));
}
app.component.html
<form [formGroup]="addForm" (ngSubmit)="onSubmit()">
<table>
<thead></thead>
<tbody>
<tr>
<td>
<div class="form-group col-xs-6">
<label for="contractName">Contract Name:</label>
<input formControlName="contractName" placeholder="Contract Name" class="form-control" name="contractName" id="contractName">
</div>
</td>
<td>
<div class="form-group col-xs-6">
<h4 style="margin-left:100px;">Penalty Conditions</h4>
</div>
</td>
</tr>
<tr>
<td>
<div class="form-group col-xs-6">
<label for="serviceName">Category Of Services:</label>
<select id ="serviceName" formControlName="serviceName" name="serviceName" class="form-control">
<option *ngFor="let serv of serviceId" [value]="serv.serviceId">{{serv.serviceName}}</option>
</select>
</div>
</td>
<td>
<div class="form-group col-xs-6">
<label for="penaltyApplies">Penalty Applies:</label>
<select id ="penaltyApplies" formControlName="penaltyApplies" name="penaltyApplies" class="form-control">
<option>--Select--</option>
<option>Y</option>
<option>N</option>
</select>
</div>
</td>
</tr>
<tr>
<td>
<div class="form-group col-xs-6">
<label for="copayAmount">Copay Amount:</label>
<input formControlName="copayAmount" placeholder="Copay Amount" class="form-control" name="copayAmount" id="copayAmount">
</div>
</td>
<td>
<div class="form-group col-xs-6">
<label for="penaltyRule">Penalty Rule:</label>
<select id ="penaltyRule" formControlName="penaltyRule" name="penaltyRule" class="form-control">
<option>--Select--</option>
<option>Non Emergency ER Use</option>
</select>
</div>
</td>
</tr>
<tr>
<td>
<div class="form-group col-xs-6">
<label for="deductibleApplies">Deductible Applies:</label>
<select id ="deductibleApplies" formControlName="deductibleApplies" name="deductibleApplies" class="form-control">
<option>--Select--</option>
<option>Y</option>
<option>N</option>
</select></div>
</td>
<td>
<div class="form-group col-xs-6">
<label for="penaltyType">Penalty Type:</label>
<select id ="penaltyType" name="penaltyType" formControlName="penaltyType" class="form-control">
<option>--Select--</option>
<option>Coinsurance</option>
<option>Dollar Amount</option>
</select></div>
</td>
</tr>
【问题讨论】:
标签: angular spring-boot angular5 angular6