Este campo es obligatorio

Formato de dni incorrecto

{
  "$validators": {},
  "$asyncValidators": {},
  "$parsers": [
    null
  ],
  "$formatters": [
    null,
    null
  ],
  "$viewChangeListeners": [],
  "$untouched": true,
  "$touched": false,
  "$pristine": true,
  "$dirty": false,
  "$valid": false,
  "$invalid": true,
  "$error": {
    "isNif": true,
    "required": true
  },
  "$name": "nif1",
  "$options": null
}

Este campo es obligatorio

Formato de dni incorrecto

{
  "$validators": {},
  "$asyncValidators": {},
  "$parsers": [],
  "$formatters": [
    null
  ],
  "$viewChangeListeners": [],
  "$untouched": true,
  "$touched": false,
  "$pristine": true,
  "$dirty": false,
  "$valid": false,
  "$invalid": true,
  "$error": {
    "required": true,
    "isNif": true
  },
  "$name": "nif2",
  "$options": null
}

Este campo es obligatorio

Formato de dni incorrecto

{
  "$validators": {},
  "$asyncValidators": {},
  "$parsers": [],
  "$formatters": [
    null
  ],
  "$viewChangeListeners": [],
  "$untouched": true,
  "$touched": false,
  "$pristine": true,
  "$dirty": false,
  "$valid": false,
  "$invalid": true,
  "$error": {
    "required": true,
    "isNif": true
  },
  "$name": "nif3",
  "$options": null
}
Edit in JS Bin