我想使用范围滑块选择一个值,然后将此值呈现在Angular中的范围选择器的顶部。 我的html代码是:
<div class="form-group">
<label for="range">Raio: {{raio}} metros</label>
<input type="range" min="100" max="2000" step="100"
oninput="rangeChange(this.value)"
class="form-control-range" id="range">
</div>
在我的component.ts中,我具有以下功能:
export class LugaresComponent implements OnInit {
raio = 200;
constructor() {}
ngOnInit() {}
rangeChange(value) {
this.raio=value;
console.log(this.raio)
}
}
当我在范围输入中选择一个值时,我在控制台上收到以下错误:
Uncaught ReferenceError: rangeChange is not defined
正确的方法是什么?
答案 0 :(得分:1)
我认为您必须通过()使用oninput作为事件,然后将事件传递给函数
<input type="range" min="100" max="2000" step="100" (oninput)="rangeChange($event)" />
rangeChange(event) {
this.raio = event.target.value;
}
但是最好通过ngModel使用数据绑定,如果只需要将输入中的值绑定到组件的属性上,则无需处理事件
<input type="range" min="100" max="2000" step="100" [(ngModel)]="raio" />