有什么简单的方法可以实现这一点吗?
这是我导航到路线的代码
public gotoCreateAlbum(): void {
this.router.navigate([('/create-album')])
}
@Input() selectedPhotos: IPhoto[];
这是我的路由模块
const routes: Routes = [
{ path: 'photos', component: PhotosComponent},
{ path: 'photos/:filter', component: PhotosComponent},
{ path: 'create-album', component: CreateAlbumComponent}
];
基本上,我希望执行与CreateAlbum组件是当前组件的子组件相同的操作,在这种情况下,我将使用@Input()
除非您希望用户操作地址栏中的查询字符串,否则请在发送数据之前和接收数据之后执行“atob”和“btoa”。只是一点点安全感
// before
this._router.navigate(["/welcome/" + atob(userName)]);
// after
ngOnInit() {
this.userName = btoa(this.route.snapshot.params['userName']);
}
gotoHeroes(hero: Hero) {
let heroId = hero ? hero.id : null;
// Pass along the hero id if available
// so that the HeroList component can select that hero.
// Include a junk 'foo' property for fun.
this.router.navigate(['/heroes', { id: heroId, foo: 'foo' }]);
}
要获取目标组件中“id”的值:
ngOnInit() {
this.heroes$ = this.route.paramMap.pipe(
switchMap((params: ParamMap) => {
// (+) before `params.get()` turns the string into a number
this.selectedId = +params.get('id');
return this.service.getHeroes();
})
);
}
我希望这会起作用。尝试使用查询参数。
<nav>
<a [routerLink]="['/component1']">No param</a>
<a [routerLink]="['/component2']" [queryParams]="{ page: 99 }">Go to Page 99</a>
</nav>
或者
opencomponent2(pageNum) {
this.router.navigate(['/component2'], { queryParams: { page: pageNum } });
}
在子组件中:
constructor(
private route: ActivatedRoute,
private router: Router) {}
ngOnInit() {
this.sub = this.route
.queryParams
.subscribe(params => {
// Defaults to 0 if no query param provided.
this.page = +params['page'] || 0;
});
}
我在rangle.io网站上研究过这个。如果对你有用,试试这个。否则https://angular . io/docs/ts/latest/cookbook/component-communication . html #!#双向-服务是唯一选项。
所以我有一些路线,比如<code>/category/tech</code>和<code</categority/tech/new<code>和<code>/category/tech/old</code>等等 他们都使用 或者我必须分别定义它们,就像
我无法使用反应路由器通过道具。我到现在为止的代码: 错误截图 我正试图访问控制台中的id,就这么简单。 错误仅在我尝试传递道具时显示 源链接:https://reacttraining.com/react-router/web/api/Route/route-props
我需要将数据传递到我的路由器,以便在目的地组件中使用它,我使用了< code>NavigationExtras的< code>QueryParam,但它在URL中显示参数,还有其他传递数据的方法吗?
例如,在具有分页列表的路由上,网址可能如下所示,表示我们已加载第二个网页: 使用指令和来传递查询参数。例如: 或者,我们可以使用服务通过JS跳转: 读取查询参数 See Official Documentation on Query Parameters
是否可以在Angular2中从一条路线返回数据到另一条路线?类似于使用模态搜索/选择一些数据,然后将其返回。 应用程序从/mainRoute开始。 用户单击搜索按钮 导航到/搜索 加载新路由/组件 用户选择X数据 我“关闭”当前路线(即返回/主路线) /mainRoute组件现在具有X对象 在Angular1中,我做了我自己的路由服务,它通过promise实现了这一点: 在Angular2中是否有
我正在使用react with react路由器。我正试图在react路由器的“链接”中传递属性 “链接”呈现页面,但不将属性传递给新视图。下面是查看代码 如何使用“链接”传递数据?