[英]Get array from node.js (server-side)to react app.js (client-side)
[英]Node.js server-side form validation with client-side response
Express-form是node.js / express的一個非常強大的驗證插件。 但是,在示例和文檔中,所有響應都是服務器端(console.log),這對於開發來說已經足夠了,但是告訴用戶出了什么問題卻不太實際。
目前,我可以想象兩種不同的解決方案:
我更喜歡選項2,因為我不想在渲染'new'時再次查詢數據庫。 但我不知道如何將驗證結果傳遞回客戶端並將“錯誤”類添加到輸入字段。
有任何想法嗎?
我嘗試在瀏覽器的第一個實例中通過javascript驗證用戶輸入,然后在服務器上驗證輸出的表單中的錯誤(la rails)。 現在我正在使用我的一套自定義驗證器,所以我不能用express-form
指出你正確的方向。
除了我的自定義正則表達式,我有時使用驗證器 npm包,您還可以使用普通DOM或某些框架在瀏覽器中使用validator
驗證。
編輯 :
使用AJAX驗證非常簡單,您在請求中收到一個對象(如果您使用express.bodyParser()
中間件),驗證參數,如果有一些錯誤,您可以在您的響應中指出它。
{
"errors": {
"foo": "must be a number"
}
}
和:
for (i in answer.errors) {
var target = document.getElementById(i);
target.class = "error";
// here you can also handle the error description
}
如果你在瀏覽器端使用框架,有插件或我確信編寫一個很簡單。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.