Javascript 如何在角度平移中传递参数

Javascript 如何在角度平移中传递参数,javascript,angularjs,Javascript,Angularjs,我创建了一个函数,它可以执行一些错误检查,并将在不同的输入字段中使用。我的功能代码如下: errorChecks = (element, minlength) => { if (element.$dirty) { if (element.$error.required == true) { this.errorMessage = "REQUIRED"; return; } else if (element.$viewValu

我创建了一个函数,它可以执行一些错误检查,并将在不同的输入字段中使用。我的功能代码如下:

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;
      } 
   }
}
我想通过向翻译传递一个参数来动态更改我的错误消息,如下所示:

errorChecks(username, 5);
如果在用户名字段中输入1个字符,错误将显示:
用户名必须至少为5个字符


我想做的是可能的吗

如果您在控制器内部为这一个进行翻译可能是最好的,除非您希望将
元素
最小长度
传递给模板

首先,您需要将
$translate
注入控制器。然后生成您的消息:

this.errorMessage = $translate('MINLENGTH', { element: element, value: minlength });
本文还概述了这种方法

要在模板中执行此操作(概述):


您还可以使用
$translate.instant('MINLENGTH',{element:element,value:MINLENGTH})
您也可以在模板中这样做

<span data-translate="MINLENGTH" data-translate-values="{ element: element, value: minlength }"></span>

对于任何想知道语法如何的人来说,对于使用方法检索输入进行翻译,这对我来说很有用:

   {{ MINLENGTH | translate : { x: table.getShownCount(), y: table.getTotalCount() } }} 

你在模板中的解决方案对我不起作用。我必须删除引号。模板解决方案会导致错误,只有在删除对象周围的quites后才有效
<span data-translate="MINLENGTH" data-translate-values="{ element: element, value: minlength }"></span>
   {{ MINLENGTH | translate : { x: table.getShownCount(), y: table.getTotalCount() } }}