Vscode-ng-language-service: [Angular] El identificador 'obligatorio' no está definido. '__type' no contiene tal miembro

Creado en 28 ago. 2017  ·  22Comentarios  ·  Fuente: angular/vscode-ng-language-service

errores de propiedad de AbstractControlDirective

Tengo el siguiente código:

<div>
    <label for="fullname">Passenger name:</label>
    <input
      type="text"
      name="fullname"
      required
      #fullname="ngModel"
      [ngModel]="detail?.fullname">

      <div class="error" *ngIf="fullname.errors?.required && fullname.dirty">
        Passenger name is required.
      </div>
  </div>

Al usar una propiedad dentro de la propiedad errors de la referencia ngModel, me muestra ese error.
Esto no debería ser un error, ya que es una sintaxis válida para formularios basados ​​en plantillas.

Comentario más útil

esto resolverá el problema:
solo agrega casting a bool usando !! :


Se requiere el nombre del pasajero.

Todos 22 comentarios

Cierre por duplicado de # 149

Lo he intentado con el enfoque anterior pero falló estrepitosamente.

Por favor mire este código -

Este campo es obligatorio
          <div *ngIf="username.errors.minlength">Minimum length should be {{username.errors.minlength.requiredLength}}</div>

Lanzamiento de error por el compilador de TS -
[Angular] El identificador 'obligatorio' no está definido. '__type' no contiene tal miembro

Intenté lo mismo pero no salí

Ejemplo
intente agregar "?" después de "precio".
"

Se requiere precio.
"

Se requiere el primer nombre.
El nombre debe tener un mínimo de 3 caracteres.

El nombre no coincide con el patrón.


intenté esto

<div *ngIf="firstName.errors.required">First Name is required. <div *ngIf="firstName.errors.minlength">First Name should be minimum 3 character.</div> <div *ngIf="firstName.errors.pattern">First Name doesn't Match pattern.</div> </div> i tried this

esto resolverá el problema:
solo agrega casting a bool usando !! :


Se requiere el nombre del pasajero.

Ejemplo
intente agregar "?" después de "precio".
"

El precio es obligatorio ".

Resolví este problema agregando? antes del parámetro y no después de los errores? Pero, ¿podría elaborarlo e intentar explicar cómo se resuelve este problema simplemente moviendo el signo de interrogación? @Danielapariona

esto resolverá el problema:
solo agrega casting a bool usando !! :


Se requiere el nombre del pasajero.

¡Esto resolvió mi problema! ¡Gracias!

Ejemplo
intente agregar "?" después de "precio".
"

El precio es obligatorio ".

Funcionó para mí. ¿Podría decirme por qué debería agregar "?"

esto también resuelve mi problema solo agrega?

Pero ni la conversión como booleana o el uso de? (Puede que no lo haya hecho) no resuelve el hecho de que intelliSense no puede encontrar las propiedades de _errors_.

probar precio ['errores'] ['obligatorio']

@EeeEui el? (operador de navegación segura) tomará una variable incluso si no es válida y tratará la excepción internamente (inválido = falso en este caso).

? no funcionó para mí. !! solo funcionó en mi caso.

? no funcionó f. !! Solo funcionó en angular 7+.

<div class="alert alert-danger" *ngIf="username.touched && username.invalid" class="alert alert-danger">
            <div *ngIf="!!username.errors.required">Username is required</div>
            <div *ngIf="!!username.errors.minlength">Username Should be minimum {{ !!username.errors.minlength.requiredLength }} Charecters.</div>
          </div>

Ahora parece un problema con VSCode, porque el error todavía está resaltado en mi editor, pero Angular no lo detecta como tal. Lo que hice para resolver esto para VSCode fue verificar el error en el lado de TypeScript, con una función.

HTML

html

Mecanografiado

ts

Esto funcionó para mí y se ve más limpio.
<div class="error" *ngIf="fullname.hasError('required')">
de esta manera es útil incluso si manejamos la validación personalizada, como fullname.hasError('invalidName')

Yo tenía el mismo error. Hacer *ngIf="formGroup?.get('fullName').hasError('required')" funcionó para mí

Ahora parece un problema con VSCode, porque el error todavía está resaltado en mi editor, pero Angular no lo detecta como tal. Lo que hice para resolver esto para VSCode fue verificar el error en el lado de TypeScript, con una función.

HTML

html

Mecanografiado

ts

Hermano mayor, esto es demasiado para ti.

Do * ngIf = "yourForm.get ('yourfield'). HasError ('required')"

Este problema se ha bloqueado automáticamente debido a la inactividad.
Por favor, presente un nuevo problema si se encuentra con un problema similar o relacionado.

Obtenga más información sobre nuestra política de bloqueo automático de conversaciones .

_Esta acción ha sido realizada automáticamente por un bot._

¿Fue útil esta página
0 / 5 - 0 calificaciones