ici dans erreur TypeError: Impossible de lire la propriété 'ISD_Code' de NULL
au profiléditComponent.ngoninit p>
BlockQuote> Dans HTML, j'utilise l'opérateur de navigation sécurisée, mais ici, je dois définir les valeurs dans J'ai essayé de vérifier si la propriété est indéfinie mais elle ne fonctionne pas userprofile code> the téléphone_number code> et enfant téléphone_number code> et et isd_code code> ne sont pas disponibles initialement. Donc, lorsque j'essaie de modifier la page de profil, je reçois l'erreur P>
FormBuilder CODE> sinon la validation échoue même si la valeur est définie. P> this.userprofile.phone_number.isd_code! = Non défini code>. P> h2>
3 Réponses :
Utiliser un opérateur de navigation sécurisé ESSAYEZ Ceci: P> ? CODE> STRONY> OU OPERATEUR TERNAIRE POUR TYPESSIVANT isd_code: [(this.userProfile)?(this.userProfile.phone_number ? this.userProfile.phone_number.isd_code : null) : null],
Cet opérateur est disponible dans des modèles et non dans le TS.
@ADrita Sharma comme je l'ai mentionné dans ma question, cela ne fonctionne pas dans TS
@ADRITASHARMA Cela ne fonctionne pas si le numéro de téléphone n'est pas défini. Désolé de ne pas mentionner en poste. Va éditer le message maintenant
Pourquoi ne pas l'initialiser avec un objet vide.
@Input() userProfile: any= new UserProfile();
Cela fonctionnera-t-il si j'ai déjà créé un modèle pour UserProfile
Si vous avez déjà créé un modèle avec des valeurs prépopulées, utilisez ce modèle à attribuer à votre UserProfile, assurez-vous de disposer des champs initialisés à certaines valeurs.
Le problème dans ce cas peut être que le this.userprofile.phone_number code> a une valeur de null fort> et que vous essayez d'accéder à une propriété d'un élément avec this.userprofile.phone_number code> avant d'essayer d'accéder à une propriété:
Pouvez-vous faire
[this.userprofile.phone_number && this.userprofile.phone_number.isd_code || null] code>@Callback non, ça ne résout pas le problème
Mais votre chèque
this.userprofile.phone_number.isd_code! = Non défini code> échouera au même endroit que le formulaire FormBuilder - siPhone_Number code> est indéfini / null. Vous n'avez aucun problème d'indéfiniisd_code code>, vous avez un problème de l'objet une étape supérieure.vous pouvez simplement consoler.log (this.userprofile) au-dessus de Ngoninit et voir si ISD_Code existe
"Ici dans UserProfile The Phone_Number et enfant Téléphone_number et ISD_Code ne sont pas disponibles initialement" - Ensuite, je vois un autre problème à l'horizon: vous devez gérer les modifications d'entrée non dans
ngoninit code> (qui est tiré une fois et gagné " t être à nouveau), mais dansNgonchanges code>.