2015-11-27 9 views
5

में पैरामीटर कैसे पास करें मैंने एक फ़ंक्शन बनाया है जो कुछ त्रुटि जांच करता है और विभिन्न इनपुट फ़ील्ड में उपयोग किया जाएगा। मेरा फ़ंक्शन कोड नीचे है:कोणीय-अनुवाद

errorChecks = (element, minlength) => { 
    if (element.$dirty) { 
     if (element.$error.required == true) { 
     this.errorMessage = "REQUIRED"; 
     return; 
     } else if (element.$viewValue.length < minlength) { 
      this.errorMessage = "MINLENGTH" // MINLENGTH error with parameters here 
      return; 
     } else { 
      this.errorMessage = null; 
      return; 
     } 
    } 
} 

मैं अपने त्रुटि संदेशों के लिए कोणीय अनुवाद का उपयोग कर रहा हूं।

"MINLENGTH": "{{ element }} must be at least {{ value }} characters", 

मैं गतिशील इसलिए की तरह अनुवाद के लिए एक पैरामीटर पास करके मेरी त्रुटि संदेश को बदलना चाहते हैं:

errorChecks(username, 5); 

अगर मैं उपयोगकर्ता नाम क्षेत्र के लिए 1 वर्ण दर्ज त्रुटि कहेंगे: username must be at least 5 characters

क्या मैं भी ऐसा करने की कोशिश कर रहा हूं?

उत्तर

6

यदि आप टेम्पलेट में element और minlength पास करना चाहते हैं, तो यह संभवतः सबसे अच्छा होगा यदि आप इस के लिए नियंत्रक के अंदर अनुवाद करते हैं।

सबसे पहले आपको अपने नियंत्रक में $translate इंजेक्ट करने की आवश्यकता होगी।

this.errorMessage = $translate('MINLENGTH', { element: element, value: minlength }); 

इस विधि भी here उल्लिखित है: फिर अपने संदेश उत्पन्न करने के लिए।

{{ MINLENGTH | translate : '{ element: element, value: minlength }' }} 
:

टेम्पलेट (here बताया गया है) में ऐसा करने के लिए