我必须将参数传递给函数。
spark.yarn.executor.nodeLabelExpression
这对我来说非常重要,因为我必须将<select class="chooseWatchlist" (change)="updateWatchlistTable(item.name)">
<option *ngFor="let item of _items">{{ item.name }}</option>
</select>
参数传递给http请求。但不幸的是,角度没有看到那个变量,因为它有点在楼下......函数必须在选择框中选择item.name
实际选择的选项。该功能将在该框中的每个值更改时执行。
有没有解决办法?或者也许还有另一种解决方法?
最后,http请求:
item.name
private updateWatchlistTable(name) {
this.http.get('http://localhost:8080/api/points/getValue/' + name)
.subscribe(res => this._watchlistElements = res.json());
console.log(name);
}
返回undefined。
正如您所看到的,我需要使用该参数console.log(name)
来使此http请求正常工作。任何帮助赞赏。 :)
答案 0 :(得分:2)
使用NgModel
指令将所选值存储在组件的变量中,然后将该变量作为参数传递给http请求,让我们调用该变量selectedValue
:< / p>
<select class="chooseWatchlist" [(ngModel)]="selectedValue"
(ngModelChange)="updateWatchlistTable(selectedValue)">
<option *ngFor="let item of _items" [ngValue]="item.name">{{ item.name }}</option>
</select>
您只需在组件中声明名称为selectedValue
的变量:
selectedValue: string;
详细了解NgModel
指令here。
答案 1 :(得分:2)
使用ngValue
,您可以绑定值和
使用(ngModelChange)="$event.name"
您可以访问该名称
使用[(ngModel)]="selectedItem"
,您可以获取并设置选择的项目。
<select class="chooseWatchlist" [(ngModel)]="selectedItem" (ngModelChange)="updateWatchlistTable($event.name)">
<option *ngFor="let item of _items" [ngValue]="item">{{ item.name }}</option>
</select>
答案 2 :(得分:1)
您应该能够使用所选值传递给该函数。为此,您可以从事件对象($event
)访问当前元素的值。
<select class="chooseWatchlist" (change)="updateWatchlistTable($event.currentTarget.value)">
<option *ngFor="let item of _items" [value]="item.name">{{ item.name }}</option>
</select>