<input type="number" style="width: 100px" [(ngModel)]="trait.userMinimum" (ngModelChange)="setThresholds()">
模型被下面的代码更改并反映在屏幕上,但随后 ngModelChange 未被调用。我希望它被调用,无论它在其他地方被更改或作为属性或任何原因。如果模型发生变化,它会调用 ngModelChange。
<p-slider [(ngModel)]="trait.userMinimum"
[style]="{'width':'100%'}"
[min]="trait.min"
[max]="trait.max"
class="ui-g-8"></p-slider>
<span class="ui-g-2">{{trait.max}}</span>
为了澄清 ngModel 按预期工作,我移动滑块以更改数字,然后输入滑块更改的数字。唯一不起作用的是滑块更改并且模型更改未在输入中调用。
//This is a **two way** binding, so below code will not take effect
[(ngModel)]="trait.userMinimum"
(ngModelChange)="setThresholds()" //This will not be fired
解决办法是修改如下,去掉“()”,让get和set分开:
[(ngModel)]="trait.userMinimum" ---> [ngModel]="trait.userMinimum"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)