我目前在多个模块的下面的代码:不重复处理函数阵营JS
handleChange(event) {
const target = event.target;
const value = target.type === 'checkbox' ? target.checked : target.value;
const id = target.id;
this.setState({
[id]: value
});
}
我想巩固我的代码,这样我不会重复自己。我最初试图将这个文件移动到另一个名为FormHandler.js的文件中,并将此代码放入一个名为FormHandler的类中。然后我会导入处理程序如下:
Import FormHandler from '.\FormHandler
我想,那么我将能够使用它像这样:
<input id="first_name" onChange={FormHandler.handleChange.bind(this)} />
我试图绕过我的脑海里的主要问题是与设置状态。目前,它会尝试在FormHandler类中设置状态,而不是我从中调用它的组件。
于是,两个问题:
- 我应该尝试用,这样我不会重复自己的代码分离到其自身的模块烦恼呢?毕竟
import
命令本身就是一种重复。 - 如果是这样,我该如何去更新调用组件的状态。看起来我能想出的任何东西只是引起更多的重复。