2017-07-16 14 views
3

Express Validatorモジュールは、新しい関数を使用します。req.getValidationResult()この関数は、検証にエラーがある場合にオブジェクトを返します。オブジェクトは次のようになります。Express Validatorとreq.getValidationResult()

{param: "field name", msg: "error message", value: "<field input value>"} 

質問:オブジェクトから.msgパラメータを返す方法は?使用時に

req.getValidationResult().then(function(result){ 
     if(!result.isEmpty()) { 
      console.log(result.array()); 
      //return; 
     } else { 
      console.log('Validation Ok'); 
     } 

この関数は配列を返します。しかし、私は.msgだけ必要です。

答えて

0
req.getValidationResult().then(function(result){ 
    const {msg} = result; 
    if(msg != undefined) { 
     console.log(msg); 
     //return; 
    } else { 
     console.log('Validation Ok'); 
} 
0
request.getValidationResult().then(function(result) { 
      if (result.array() != '') { 
       response.render('route',{validation:result.array()}) 
       return; 
       return; 
      } else { 
       //valid 
      } 
     }); 

ビュー:

<% if(validation) {%> 
<ul> 
    <% for(var i = 0;i< validation.length;i++){ %> 
    <li><%= validation[i].msg %></li>   
    <%}%> 
</ul> 
<% }%> 
3

コードは、次の

req.getValidationResult().then(function (result) { 
     if (!result.isEmpty()) { 
      var errors = result.array().map(function (elem) { 
       return elem.msg; 
      }); 
      console.log('There are following validation errors: ' + errors.join('&&')); 
      res.render('register', { errors: errors }); 
     } else { 
なければなりません