有必要在表单验证期间将用户填写的表单值重新呈现给用户。在一个典型的MEAN stack应用程序中,我尝试了以下方法,但我对它们都不满意:
(1)通过Ajax提交表单,因此不需要重新呈现表单值,因为表单值就在那里。但是在这种情况下,很难显示错误消息和突出显示错误字段。
(2)将表单值存储在会话中,并从会话中获取值以重新呈现它们。
(3)将表单值存储在cookie中,并使用cookie重新填写表单。
有没有更好的方法?
我建议你回去重新评估一下这个选择。如果你不喜欢这个,MEAN stack可能不适合你。AngularJS完全支持spa和AJAX表单提交。它的表单子系统中的验证和错误消息功能相当健壮和可靠。如果你正在与它们作斗争,将它们丢弃到POST请求的全页面加载中,这可能表明你需要更加努力地与AngularJS协调工作,或者选择一个你觉得更有趣的不同技术堆栈。(1)通过Ajax提交表单,因此不需要重新呈现表单值,因为表单值就在那里。但是在这种情况下,很难显示错误消息和突出显示错误字段。