Javascript 如何在渲染到另一个元素时停止handleSubmit更新?

Javascript 如何在渲染到另一个元素时停止handleSubmit更新?,javascript,html,reactjs,forms,Javascript,Html,Reactjs,Forms,现在试着做出一些反应,遇到了一个似乎在任何地方都没有涉及到的问题 我有一个连接到API的非常简单的搜索表单。当返回一个无效值时,它会呈现一个Header 3元素,并显示如下错误消息: 无效值xxx 请输入有效的增值税编号 简而言之,我似乎找不到如何停止“xxx”的重新渲染。在发送新请求之前,每次我开始键入或从字段中删除文本时,“无效值xxx”都会更新,但我希望它停止 无论我在哪里尝试寻找任何提示或想法,文档中都没有描述此类案例(或者我不知道在哪里查找)。搜索互联网也没有结果 由于一些奇怪的原因,

现在试着做出一些反应,遇到了一个似乎在任何地方都没有涉及到的问题

我有一个连接到API的非常简单的搜索表单。当返回一个无效值时,它会呈现一个Header 3元素,并显示如下错误消息:

无效值xxx 请输入有效的增值税编号

简而言之,我似乎找不到如何停止“xxx”的重新渲染。在发送新请求之前,每次我开始键入或从字段中删除文本时,“无效值xxx”都会更新,但我希望它停止

无论我在哪里尝试寻找任何提示或想法,文档中都没有描述此类案例(或者我不知道在哪里查找)。搜索互联网也没有结果

由于一些奇怪的原因,非常简单地删除handleChange并将this.setState移动到handleSubmit不起作用


     handleChange(event) {
      this.setState({ value: event.target.value });
    }


搜索增值税:

无效值{`}{this.state.value}


请输入有效的增值税编号
您应该将无效值与
状态值分开

因此,如果您的API调用返回一个错误,那么此时将当前的
state.value
复制到一个新的状态变量中,例如
state.errorValue
。这是您应该用来呈现错误消息的内容:

<h3>
      Invalid value {this.state.errorValue}
      <br /> <br />
      Please enter valid VAT Number
</h3>

无效值{this.state.errorValue}


请输入有效的增值税编号

在用户再次开始键入后或成功地将子MSISION发送到api(以合适的为准)后,清除您的
状态.errorValue。

您应该将无效值与
状态.value
分开

因此,如果您的API调用返回一个错误,那么此时将当前的
state.value
复制到一个新的状态变量中,例如
state.errorValue
。这是您应该用来呈现错误消息的内容:

<h3>
      Invalid value {this.state.errorValue}
      <br /> <br />
      Please enter valid VAT Number
</h3>

无效值{this.state.errorValue}


请输入有效的增值税编号

在用户再次开始键入后或成功对api进行子会话后(以合适的为准),清除
状态.errorValue.

添加
事件.preventDefault()
中的
handleSubmit
?@Vencovsky已经存在,下面的答案就是我正在寻找的答案。@如果是您正在寻找的,别忘了将其标记为已接受!;)在
handleSubmit
中添加
event.preventDefault()
?@Vencovsky已经存在,下面的答案就是我要找的答案。@如果是您要找的,别忘了将其标记为已接受!;)好的,谢谢。我只是想知道,如果不把它分散到其他变量中,这是否可能,但我想这不是在React中做事情的方式。非常感谢。好的,谢谢。我只是想知道,如果不把它分散到其他变量中,这是否可能,但我想这不是在React中做事情的方式。非常感谢。
<h3>
      Invalid value {this.state.errorValue}
      <br /> <br />
      Please enter valid VAT Number
</h3>