我正在尝试将值从父组件传递给子模块。这是我的项目结构:
++Layout
---admin-layout.component.html
---admin-layout.component.ts
++Dashboard
---dashboard.component.html
---dashboard.component.ts
---dashboard.module.ts
---dashboard.routing.ts
而我的app.routing.ts
路由是这样的。
export const AppRoutes: Routes = [{
path: '',
component: AdminLayoutComponent,
children: [
{path: '/dashboard', loadChildren: 'PATH/dashboard.module#DashboardModule'},
///
]}];
所以我的问题是我在admin-layout.html中有一个点击事件,那么如何将值从admin布局发送到仪表板?
目前,我通过Url发送它,比如在路径上更改它
{path: '/dashboard/:eventidvalue', loadChildren: 'PATH/dashboard.module#DashboardModule'},
什么时候路由。
是否有任何替代和清洁的方式。
您可以使用具有一个实例的Singleton服务,在其中添加一些日期并在任何需要的地方获取它们。创建共享模块之后,创建共享模块并在主模块和仪表板模块中导入该共享模块
您可以使用ModuleWithProviders和forRoot来提供单件服务
import { SharedService } ...
...
export class SharedModule {
static forRoot(): ModuleWithProviders {
return {
ngModule: SharedModule,
providers: [SharedService]
}
}}
你可以这样导入它:
imports: [
SharedModule.forRoot(),
],