首页 > 解决方案 > 在 Angular 中的组件之间传递文件

问题描述

我想将文件传递给带有角度的第二个组件

this.router.navigate(['/secondComponent'], { queryParams: { file: File}})

或者通过 formData 传递

 var formData: any = new FormData();
 formData.append("file", file);
 this.router.navigate(['/secondComponent'], { queryParams: { file: File}})

它不像这样工作。我怎样才能做到这一点?谢谢

标签: javascriptangular

解决方案


如果您想在 Angular 路由组件之间进行适当的异步导航,那么您应该考虑使用rxjsAngular 本机提供的库。您可以按照以下步骤来实现:

  1. 使用首选名称创建新服务。
  2. 在服务中创建一个新Subject的并在路由的组件中订阅它。
  3. 在路由之前将您的文件对象作为主题中的值发出。

推荐阅读