Antes veíamos una manera de comunicar dos componentes. Ahora presentaremos una forma de validar los campos de un formulario.

Añadimos la directiva de validación al módulo de EvaluationComponentsModule:

const AmountValidatorDirective: ng.IDirective = () => ({
  require: 'ngModel',
  link(scope, elm, attrs, ctrl) {
    ctrl.$validators['amount'] = (modelValue, viewValue) => {
      if (ctrl.$isEmpty(modelValue)) return true;
      return modelValue < 5;
    };
  },
});

Sólo queda usarla en el template de SurveyComponent para empezar a validar que solamente se ingresen números menores que cinco. El ejemplo completo se muestra aquí. 🙂

Anuncios