想做一个react上传图片预览的组件,然后以前绑定事件都是写在class内部然后通过this.xxx来调用,
然后突发奇想举着这个bindEvent事件里全是dom相关的操作,那为什么非要挂在this上来调用而不是直接放在class外面?然后就这样写了(如图)没有发现问题,但是我到网上差了一下,把一个函数暴露在class组件外部可能造成内存泄漏(闭包函数)。
大家有什么好的办法来处理这些与组件不相关的方法嘛?
想做一个react上传图片预览的组件,然后以前绑定事件都是写在class内部然后通过this.xxx来调用,
然后突发奇想举着这个bindEvent事件里全是dom相关的操作,那为什么非要挂在this上来调用而不是直接放在class外面?然后就这样写了(如图)没有发现问题,但是我到网上差了一下,把一个函数暴露在class组件外部可能造成内存泄漏(闭包函数)。
大家有什么好的办法来处理这些与组件不相关的方法嘛?
<input type='file' onChange={ () => this.handleUpload.bind(this)}/>
handleUpload() {
在arguments中可以取到事件对象
}
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
看了一下你的代码,试试这样。不用写你的那么复杂的