【发布时间】:2019-11-25 11:56:00
【问题描述】:
我正在 Angular 8 上开发一个应用程序。我将其设为多页,并通过路由器传递参数。我需要将数据从一个页面传输到另一个页面,如果我的页面没有以任何方式连接,我该怎么做?所有页面都通过路由器插座加载。
不使用 parent.component -> child.component 嵌套是不好的做法吗?
因为将来我需要将数据深入传输到我的图书馆的应用程序中。示例
<my-library [data]="data"></my-library>
路线
const appRoutes: Routes = [
{ path: '', component: HomeComponent },
{ path: 'progects/:id', component: ProgectsComponent},
{ path: 'progect/:id', component: ProgectComponent},
{ path: 'polls', component: PollsComponent},
{ path: 'poll/:id', component: PollComponent},
{ path: '**', redirectTo: '/' }
];
【问题讨论】:
-
您可以为此使用服务。例如,您可以定义一个主题,每次您必须传递数据时,您都会使用
yourSubject.next()发出该主题,并在您订阅它的其他页面上收听它。 -
angular 提供了不同的组件交互方式,请阅读这里:angular.io/guide/component-interaction
-
您可以根据需要将其存储在本地或会话存储中。
标签: angular