Je ne peux pas obtenir le paramètre de l'itinéraire, il doit ensuite appeler une fonction dans le composant qui appelle ensuite au service.
Je l'ai ajouté au constructeur car je croyais qu'il ne passerait peut-être pas à passer à temps si c'est à Nginit mais toujours pas de chance. P>
J'ai ajouté une console.log et il s'agit simplement d'imprimer NULL et je peux le voir appeler la fonction mais ne pas passer le paramètre. P>
Je suis sûr qu'il est super basique et je viens de faire une erreur quelque part. p>
app.module.ts p> app.common.ts p>
4 Réponses :
Pouvez-vous essayer d'obtenir un instantané d'itinéraire actionné à l'intérieur ou vous pouvez vous abonner à une itinéraire comme ceci; p> ngOnInit() {
this.route.paramMap.subscribe(params => {
this.tapCode = this.route.snapshot.paramMap.get('tapcode');
})
}
Aucun accord, retourne toujours null sous abonnement. J'ai déjà essayé de placer cela sous Nginit au lieu du constructeur et de même résultat.
Hey @hylien, pouvez-vous partager votre code via Stackblitz?
Ne changez maintenant que dans APP.COMPONENT.TS
constructor( private route: ActivatedRoute, private router: Router, private dataService: DataService) { this.route.paramMap.subscribe((param=>{ this.tapCode=param.get('tapcode') })); console.log(this.tapCode); this.getScreen(this.tapCode);}
Vous êtes déjà sur le composant parent, vous devez déclarer le même composant qu'un enfant si vous souhaitez transmettre des données au même composant
Aucun accord :( - Retourne juste indéfini.
Non - retourne juste null. Je crois que c'est à faire avec github.com/angular/angular/issues/19420
Vous pouvez obtenir des paramètres de route directement à l'intérieur des params.tapcode.
constructor( private route: ActivatedRoute, private router: Router, private dataService: DataService) { // this.tapCode = this.route.snapshot.paramMap.get('tapcode'); this.tapCode = this.route.snapshot.params.tapcode; //try this console.log(this.tapCode); this.getScreen(this.tapCode); }
J'ai un traçage activé et peut le voir étant reconnu comme tapcode: valeur mais je ne peux pas le sortir de l'objet - montrant toujours comme non défini.
Vous avez peut-être essayé cela.Route.snapshot.params ['TapCode']. Ou pouvez-vous montrer une capture d'écran de traçage?
Oui j'ai essayé cela. En fait, je pense que cela peut être dû à: Github.com/angular/angular/issues/19420< A>, Trace Sortie ci-jointe ici: imgur.com/a/nvtwcdl
Le problème était que les données n'étaient pas disponibles dans ActivateDroute, uniquement dans Activationend, car il a été saisi manuellement dans la barre d'adresses.
Avez-vous essayé de le faire dans
Ngoninit () Code> Méthode de cycle de vie?
@Amitchigadani Oui