使用Angular 2更改值时,如何调用方法?
<select [(ngModel)]="searchMonster">
<option>36</option>
<option>37</option>
</select>
我尝试使用ng change,但没有成功。
基本上,根据我的观察,当我们必须使用双向数据绑定时,会调用[(ngModel)]
。所以视图和控制器/方法是通过绑定调用的。我们可以使用[(ngModel)]作为[ngModel]和(ngModelChange)进行更改检测,但在这种情况下,onChange()
会根据此处的答案为每个选择列表更改调用两次,但当您想在更改时调用方法时,您可以在此处使用这种方式:-
<select [(ngModel)]="selectedDevice" #device (change)="onChange(device.value)">
<option *ngFor="#i of devices">{{i}}</option>
</select>
onChange(deviceValue) {
console.log(deviceValue);
}
我发现这个问题的最佳答案是
使用ngModelChange。检查模板语法文档。
试试这个
<select
[ngModel]="searchMonster"
(ngModelChange)="yourMethod($event)">
<option>36</option>
<option>37</option>
</select>
另一种选择与我合作
<select #option
[ngModel]="searchMonster"
(ngModelChange)="yourMethod(option.value)">
<option>36</option>
<option>37</option>
</select>
我有一个父组件和子组件,其中父组件通过@Input修饰符将对象传递给子组件。问题是,子级只获取父级数据一次,然后在将来更改传递给子级的父属性后,不会更新该值。
我的组件具有以下功能: 我可以在我的html页面中插入选择菜单,但更改事件不会在我选择项目时触发。有人能让我知道为什么会发生这种情况吗? 谢谢
嗨,使用angular 2作为密码字段,我必须设置“密码应该至少有1个大写字母,1个小写字母,1个数字,1个特殊字符,最少8个字符,最多16个字符” 因为我已经完成了“最少8个字符,最多16个字符”。 但我无法为其余的东西设置至少1个大写字母,1个小写字母,1个数字,1个特殊字符。 请帮我一下 预先感谢
甚至可以让服务调用组件方法吗? myapp.component myapp.service 这将导致一个
问题内容: 我正在尝试制作一个小的桌面应用程序,该应用程序应显示剪贴板的内容(如果它是字符串)。我已经完成了一个构造函数,并且构造函数运行良好,现在,我只想在将文本复制到OS的剪贴板中时调用类似的方法。我对此很陌生,因此不胜感激!告诉我应该以某种方式使用中断… 问题答案: 您可以调用Clipboard.addFlavorListener来侦听来自操作系统的剪贴板更新: 一些注意事项: 要启动您的应
问题内容: 我正在编写一个API解析Twitter机器人,对OOP来说是个新手。我有一些依赖于全局变量的现有Python代码,并认为我可以借此机会学习。 我有以下Team类,这些类在解析API时会更新,并且希望在类属性更改时能够调用完全不相关的(外部)方法。 对于现有实例,何时更改,我希望调用以下方法(伪代码): 两件事情 - 一旦检测到属性已更改,如何从班级内部调用? 我可以从任何地方访问对象的