从角度指令返回自定义错误

阿什利

从我到目前为止所学到的,验证错误是用 html 编写的,但如何返回自定义错误。例如,我有以下指令

@Directive({
  selector: '[verifySalaryUp]', // Attribute selector
  providers: [
    { provide: NG_VALIDATORS, useExisting: forwardRef(() => VerifySalaryUpDirective), multi: true }
  ]
})
export class VerifySalaryUpDirective implements Validator {

  @Input('status') status: any;
  @Input('oldSal') oldSalary;

  constructor() {
  }

  validate(control: AbstractControl): {[key: string]: any} {
    let newSalary = control.value;
    if (this.status === 'N') {
      return null;
    } else {
      if (Number(newSalary) < Number(this.oldSalary)) {
        return {
          lowSalary: {
            valid: false
          }
        }
      } else {
        return null;
      }
    }
  }

}

html部分如下

<span *ngIf="salVar.errors.lowSalary">Salary entered cannot be lesser than the previously entered salary.</span>

但是我想在 html 中返回的是输入的薪水不能小于(数值),因为该值可以从指令中获得

皮埃尔·马莱

返回的错误可以包含您想要的任何数据。

所以如果你回来

 return {
      lowSalary: {
        valid: false,
        oldSalary: Number(this.oldSalary)
      }
    }

你可以像这样在你的模板中使用它

<span *ngIf="salVar.errors.lowSalary">
    Salary entered cannot be lesser than {{salVar.errors.lowSalary.oldSalary}}.
 </span>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

角度形式:在自定义指令上设置$ dirty属性

来自分类Dev

不需要结束标记的自定义角度指令?

来自分类Dev

编译自定义指令

来自分类Dev

自定义指令显示其自身的错误

来自分类Dev

角度自定义指令困境

来自分类Dev

为term.js创建自定义的角度指令

来自分类Dev

角度自定义指令不会触发ng-click

来自分类Dev

角度小叶自定义标记(使用角度指令)

来自分类Dev

角度自定义指令调用内联函数

来自分类Dev

测试自定义的角度指令是否显示/隐藏元素

来自分类Dev

角度自定义指令JQuery动画不会移动元素

来自分类Dev

自定义搜索指令

来自分类Dev

角度自定义验证指令。从视图模型中获取错误

来自分类Dev

自定义指令在角度模块内不起作用?

来自分类Dev

自定义指令

来自分类Dev

AngularJS自定义指令

来自分类Dev

自定义的角度指令以在间隔中添加/删除类

来自分类Dev

指令自定义控件

来自分类Dev

不需要结束标记的自定义角度指令?

来自分类Dev

具有自定义/条件操作的角度指令

来自分类Dev

为term.js创建自定义的角度指令

来自分类Dev

如何使用自定义的角度指令加载脚本?

来自分类Dev

有角度的。内含ng-repeat的自定义指令

来自分类Dev

Datepicker的角度自定义指令,弹出问题

来自分类Dev

CKEditor渲染角度自定义指令

来自分类Dev

点击Angularjs $ injector:创建自定义角度指令时出现unpr错误

来自分类Dev

角度自定义指令数据绑定

来自分类Dev

使用$ compile从自定义指令操纵角度指令

来自分类Dev

如何从角度控制器调用自定义指令