redux-form 中的 AsyncValidation 和 Uncaught promise
AsyncValidation and Uncaught promise in redux-form
我已经在我的 redux-form 中实现了一个 asyncValidation 并且它按预期工作。当我离开字段时,字段中的数据将通过asyncValidation进行验证。
但是,如果我在离开该字段时立即单击提交,我将收到错误消息 'Uncaught (In promise)'
我知道我的提交处理程序没有正确实现。它不 return 一个 promise
。这就是 submitting
属性 始终为假的原因。我的提交处理程序只是向 redux 存储发送一个操作。
我的问题:编写这样的处理程序的正确方法是什么?提交处理程序是否需要了解有关 asyncValidation 的任何信息?
"redux-form" 的版本是“^6.6.1”
我认为提交处理程序不需要 return 使用异步验证时的承诺,只是 asyncValidate 函数需要 return 为了异步验证工作的承诺。
显然,您描述的错误是一个已知的回归;它曾经在早期版本中被修复,但现在又回来了。有关详细信息,请参阅此 GitHub 问题:https://github.com/erikras/redux-form/issues/1297
即使在文档站点的示例中,您也可以验证您描述的确切情况:http://redux-form.com/6.6.1/examples/asyncValidation/
我已经在我的 redux-form 中实现了一个 asyncValidation 并且它按预期工作。当我离开字段时,字段中的数据将通过asyncValidation进行验证。
但是,如果我在离开该字段时立即单击提交,我将收到错误消息 'Uncaught (In promise)'
我知道我的提交处理程序没有正确实现。它不 return 一个 promise
。这就是 submitting
属性 始终为假的原因。我的提交处理程序只是向 redux 存储发送一个操作。
我的问题:编写这样的处理程序的正确方法是什么?提交处理程序是否需要了解有关 asyncValidation 的任何信息?
"redux-form" 的版本是“^6.6.1”
我认为提交处理程序不需要 return 使用异步验证时的承诺,只是 asyncValidate 函数需要 return 为了异步验证工作的承诺。
显然,您描述的错误是一个已知的回归;它曾经在早期版本中被修复,但现在又回来了。有关详细信息,请参阅此 GitHub 问题:https://github.com/erikras/redux-form/issues/1297
即使在文档站点的示例中,您也可以验证您描述的确切情况:http://redux-form.com/6.6.1/examples/asyncValidation/