Is er een manier om data als parameter te versturen met router.navigate? Ik bedoel, zoiets als dit voorbeeld, zoals je kunt zien heeft de route een data parameter, maar als je dit doet werkt het niet:
this.router.navigate(["heroes"], {some-data: "othrData"})
omdat some-data geen geldige parameter is. Hoe kan ik dat doen? Ik wil de parameter niet verzenden met queryParams.
Er is veel verwarring over dit onderwerp omdat er zoveel verschillende manieren zijn om het te doen.
Hier zijn de juiste types die in de volgende schermafdrukken worden gebruikt:
private route: ActivatedRoute
private router: Router
Voor een voorbeeld zie: https://blogs.msmvps.com/deborahk/build-a-simple-angular-service-to-share-data/
Ik heb hier een plunker van: https://plnkr.co/edit/KT4JLmpcwGBM2xdZQeI9?p=preview
U kunt dit gebruiken. Angular2+/4/5 - navigeren met gegevens https://github.com/Hipparch/Angular2-navigate-with-data
Het beste wat ik hiervoor op internet heb gevonden is ngx-navigatie-met-data. Het is zeer eenvoudig en goed voor de navigatie van gegevens van een component naar een andere component. Je hoeft alleen maar de component klasse te importeren en het te gebruiken op een zeer eenvoudige manier. Stel dat je een home en about component hebt en je wilt data versturen dan
HOME COMPONENT
import { Component, OnInit } from '@angular/core';
import { NgxNavigationWithDataComponent } from 'ngx-navigation-with-data';
@Component({
selector: 'app-home',
templateUrl: './home.component.html',
styleUrls: ['./home.component.css']
})
export class HomeComponent implements OnInit {
constructor(public navCtrl: NgxNavigationWithDataComponent) { }
ngOnInit() {
}
navigateToABout() {
this.navCtrl.navigate('about', {name:"virendta"});
}
}
OVER COMPONENT
import { Component, OnInit } from '@angular/core';
import { NgxNavigationWithDataComponent } from 'ngx-navigation-with-data';
@Component({
selector: 'app-about',
templateUrl: './about.component.html',
styleUrls: ['./about.component.css']
})
export class AboutComponent implements OnInit {
constructor(public navCtrl: NgxNavigationWithDataComponent) {
console.log(this.navCtrl.get('name')); // it will console Virendra
console.log(this.navCtrl.data); // it will console whole data object here
}
ngOnInit() {
}
}
Voor elke vraag volg https://www.npmjs.com/package/ngx-navigation-with-data
Reageer naar beneden voor hulp.