许多框架(如 Laravel)并未提供有关如何进行前端验证的任何建议。这是可以理解的,来自后端框架。
但如果能事先提供 javascript 验证,这样用户在填写表单时可以立即看到是否有问题,那就太好了。
我知道如何使用 Laravel 之类的东西在后端进行验证,我知道如何在前端使用 javascript 进行验证。但是出现的问题是很多框架没有跨越这个前端/后端边界,但我需要让它们彼此同步验证。
我不能在前端出现不再适用于后端验证的验证错误。人们如何处理这个问题?
人们通常只进行后端验证并向用户传递 flashbag 或错误,然后简单地跳过前端验证吗?我觉得尝试让前端和后端的验证保持相同可能容易出错并且需要做很多工作。
编辑
虽然这个问题已经有了答案,但我希望能有更多的意见。欢迎人们使用什么、自定义解决方案或关于如何有效解决此问题的想法。
最佳答案
您可以自行同步。将 laravel 验证规则传递给 View 并处理它们。有一些这样的例子。
对于我来说,我通常会通过简单的前端验证来满足完整的后端验证。只有最小和最大长度之类的东西。 Front 无法检查值是否唯一。
https://dotdev.co/form-validation-using-vue-js-2-35abd6b18c5d#.q0r9nkibc
还有另一种方法,但它会稍微增加服务器的负载。首先发送一个带有标志 validate=true
的表单,它只验证一个表单。第二个请求一如既往,即验证+ Action 。它需要一个简单的 js 库来处理它,而不是一个巨大的重构。
关于javascript - 保持后端验证与前端验证同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42252894/