我正在使用带有 Stage 2 预设的 Babel,并且有一个这样的 React 组件类:
class Test extends Component {
someValue = 'Hello';
componentDidMount() {
this.debouncedHandleResize = debounce(this.handleResize, 1000);
window.addEventListener('resize', this.debouncedHandleResize);
}
handleResize = () => {
console.log(this.someValue);
}
}
这按预期工作。窗口调整大小后 1000 毫秒,handleResize 方法触发并且控制台记录“Hello”。
为什么我不能执行以下操作?
class Test extends Component {
someValue = 'Hello';
debouncedHandleResize = debounce(this.handleResize, 1000);
componentDidMount() {
window.addEventListener('resize', this.debouncedHandleResize);
}
handleResize = () => {
console.log(this.someValue);
}
}
在这种情况下,我收到一个错误:
TypeError: Expected a function
我一定遗漏了一些东西,但我认为两者基本上都是为类分配属性值的方法。