我想將具有不同型別的資料庫值保存在我的資料庫中,我是 Angular 的新手,我不知道該怎么做,我的 name 值很適合我的資料庫,而 nb_engins 的值無論如何都始終為 null。我正在嘗試將它們分配給一個陣列,這是正確的解決方案嗎?但它在我的背部有效
可視化.component.html
<div class="textbox">
<input #flotteName placeholder="Name">
</div>
<div class="textbox">
<input #flotteNbengins placeholder="nb_engins" type="number">
</div>
<input type="button"
class="btn"
value="Add flotte"
(click)="add(
flotteName.value,
flotteNbengins.value
);
flotteName.value='';
flotteNbengins.value=''
">
</div>
可視化.component.ts
export class VisualisationComponent implements OnInit {
message: any;
error: any;
flottes: Array<Flotte> = [];
constructor(
private api: ApiService,
private flotteservice: FlotteService,
private http: HttpClient,) {}
add(name: string, nb_engins: number ){
name = name.trim();
if (!name) { return; }
if (!nb_engins) { return; }
this.api.registerFlotte({ name, nb_engins} as Flotte)
.subscribe(data => {
this.flottes.push(data);
});
}
api.service.ts
registerFlotte(flotte: Flotte): Observable<Flotte>
{
return this.http.post<Flotte>(this.base_url, flotte, { headers: this.httpHeaders });
}
介面flotte.ts
export interface Flotte {
id: number;
name: string;
nb_engins: number;
}
提前致謝
uj5u.com熱心網友回復:
問題是 add(name: string, nb_engins: number ) 期望第二個引數是 nb_engins 作為數字,但 flotteNbengins.value 是一個字串,因此它不允許分配來解決這個問題,您可以將函式的引數更改為字串或
<input
type="button"
class="btn"
value="Add flotte"
(click)="
add(flotteName.value, flotteNbengins.valueAsNumber);
flotteName.value='';
flotteNbengins.value=''
"
/>
這是一個作業演示 https://stackblitz.com/edit/angular-strict-mode-hkzrvb?file=src/app/components/app.component.ts,src/app/components/app.component.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/477805.html
