作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我终于开始在我的 Angular 9 项目中使用 nouislider 了。我现在的问题是我想在 slider 值更改时更新一个字段(所以当用户移动 slider 时,我想在屏幕上显示新值)。事件有问题,我不确定是什么问题。
noUiSlider.create(this.theHtmlElement, {
start: [3000],
step: 1,
connect: [true, false],
range: {
'min': [0],
'max': [10000]
}
});
this.theHtmlElement.noUiSlider.on('update', this.valueChanged());
...
valueChanged() {
console.log(this.theHtmlElement.noUiSlider.get());
ERROR TypeError: Cannot read property 'call' of undefined
at nouislider.js:2082
at Array.forEach (<anonymous>)
at nouislider.js:2081
at Array.forEach (<anonymous>)
at fireEvent (nouislider.js:2077)
at nouislider.js:2055
at Array.forEach (<anonymous>)
at Object.bindEvent [as on] (nouislider.js:2054)
at AddCreditPageComponent.ngAfterViewInit (add-credit-page.component.ts:65)
at callProviderLifecycles (core.js:33986)
最佳答案
要绑定(bind)事件,您必须传入一个匿名函数(以及其他可能性);
this.theHtmlElement.noUiSlider.on('update', () => this.valueChanged());
this.theHtmlElement.noUiSlider.on('update', this.valueChanged.bind(this));
this.theHtmlElement.noUiSlider.on('update', this.valueChanged);
readonly valueChanged = () => {
console.log(this.theHtmlElement.noUiSlider.get());
};
this.valueChanged()
方法,返回
undefined
.然后它尝试绑定(bind)这个
undefined
到
update
事件处理程序,这将导致您看到的错误
关于angular - 错误类型错误 : Cannot read property 'call' of undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62147192/
我是一名优秀的程序员,十分优秀!