A:
formSubmit ---- validate and map to errors >>> if errors,
/ display them and do other stuff
/
formchange ---/
------------------------------
B:
pause if invalid
formSubmit ---- ---- transformData >>> submit
pause if in progress
-----------------------------------
* ---: stream transformations
* >>>: subscription / observer
我有这个图中绘制的流/可观察对象来处理Web应用程序中的典型表单提交。
有些观点:
1)B
依赖于A
:如果验证失败,我不想提交。
2)我想对formSubmit
和formChange
进行验证,这就是我合并它们的原因。
到目前为止一切顺利。但据我所知,当使用相同的源formSubmit
时,我无法控制首先处理哪个observable。控制这种事情会违反反应式编程的理念吗?
如何B
“等待”A
的结果,这些结果是根据同一来源formSubmit
打勾的?
或者更好的问题是,以反应方式处理这种情况的最佳方式是什么?
编辑:
我目前的解决方案是不合并formSubmit
和formChange
。相反,我会单独对它们进行验证。