我有一个组件,它作为一个道具发送一个方法来改变表单的输入值(像任何基本表单一样)。在onChange开始工作后,我决定添加一个clear按钮来一次清除所有输入值,因此我创建了一个方法来清除所有输入。
示例:
class ComponentName extends Component {
constructor(props) {
super(props);
this.state = {
formInputs: {
inputOne: "",
inputTwo: "",
inputThree: ""
}
};
};
handleOnChange = (event) => {
const { target: { name, value } } = event;
this.setState(previousState => {
return { formInputs: { ...previousState.formInputs, [name]: value } };
});
};
clearInputs = () => {
/* this is problematic, because I'm setting the input from defined to undefined */
this.setState({ formInputs: {} });
};
render() {
const { formInputs } = this.state;
return (
<Form
handleOnChange={this.handleOnChange}
clearInputs={this.clearInputs}
formInputs={formInputs}
/>
);
};
};
像上面的方法那样清除会产生一个错误,因为我要移除state中的键,而表单输入的值是针对state的。没问题,所以我想,我只需要将setState中的所有输入添加到一个空字符串,如:this.setState({forminputs:{inputone:“”,inputtwo:“”,inputthree:“”}});
which works。但是我有很多输入需要清除,所以这种方法可能也不是最有效的。话虽如此,是否有更有效的方法来清除状态中的“ForminPuts”对象中的每一个?
您可以在组件外部(也可以在组件内部)的单独变量中定义初始状态,并使用它不仅初始化状态,还可以在clearinputs
函数中将状态重置为它。
我在JS对象(不是数组)中有一个
本文向大家介绍BootStrap Select清除选中的状态恢复默认状态,包括了BootStrap Select清除选中的状态恢复默认状态的使用技巧和注意事项,需要的朋友参考一下 PC端项目中经常会出现大量的数据列表页面,涉及到下拉框选择筛选条件; 当时用到bootstrap-select下拉框时该如何点击重置按钮就清除下拉框的选中状态呢? 如【图1】 当我们选择摸一个条件之后 如【图2】 此时点
问题内容: 我正在尝试清除组件,但找不到es6语法的参考。我正在使用: 但是,这不适用于es6类语法。 我将如何获得相同的结果? 问题答案: 据我所知,React组件不会保留初始状态的副本,因此您只需要自己做即可。 请注意,该行要求您永远不要改变状态,否则您将污染并且无法进行重置。如果无法避免突变,则需要在构造函数中创建的副本。(或按照进行功能。) 最后,建议您使用而不是。
我在工作中使用ProcessWindowFunction并保持StateValue。我的目标是将值保持在超过1个窗口的状态,这意味着状态不会在每个窗口的末尾被清除。我有两个问题: 我怎样才能清除状态?有没有设置触发器并用它来清除状态的选项?(当在ProcessFunction中使用状态时,我能够设置触发器以执行此清除,即使没有新事件) 有没有一种方法来构建一个单元测试来检查我的ProcessWin
是否可以清除数据流中的当前水印? 一个月长的水印不允许延迟的示例输入: 通常,“2018年9月”的记录会因为时间太晚而被扔掉。当看到消息时,是否有方法以编程方式重置水印状态?
我正在使用kafka处理器API做一些自定义计算。由于某些复杂的处理,DSL并不是最佳的选择。流代码如下所示。 我需要清除一些项目从状态存储基于一个事件来在一个单独的主题。我无法找到正确的方法来使用Processor API连接另一个流,或者通过其他方法来侦听另一个主题中的事件,从而能够触发CustomProcessor类中的清理代码。有没有一种方法可以在处理器API中获取另一个主题中的事件?或者