angular - Angular [selected] 属性仅在 init 上运行
问题描述
我使用带有一些选项的选择,这些选项将由 ngFor 循环设置。每个选项都有[selected]
属性,并且应该在选择时将索引打印到控制台。问题是该功能将在页面刷新/加载时执行,而不是在单击下拉列表中的值时执行。
这是一个最小的例子:https ://stackblitz.com/edit/angular-multi-select-rppf99
我目前正在使用 Anuglar 5+
解决方案
selected
当您想在下拉列表中选择初始选项时,将使用该选项。您想要的是收听下拉列表中的更改。如果您想将索引传递给函数,但保持 id 不变,value
那么您可以使用 vanilla JS 并$event
获取选定的索引:)
<select (change)="AddTarget($event.target.selectedIndex)">
<option *ngFor="let target of availableTargets; let i = index" [value]="target.id" >
{{target.name}}
</option>
</select>
演示:StackBlitz
推荐阅读
- c - Memleak 演示没有获得常驻内存
- python - 等敏感曲线绘制python
- excel - 数据透视图 --> 使用不同过滤器时崩溃
- google-bigquery - BigQuery UI 在查看特定视图时崩溃
- awk - 试图在 jq 中重现 awk
- phantomjs - 无法将 PhantomJS 与 ReadyAPI v3.9.1 集成
- r - 下载数据并添加到 Glob.Env
- javascript - 保存反应文件特殊app.js时Visual Studio代码错误?
- php - Laravel 刀片文件在 VSCode 中以刀片类型打开
- visual-studio - 如何在 VS2019 中隐藏 CodeLens 引用计数?