小编Sa *_*gin的帖子

Angular 2动态更改默认路由

我需要允许我的应用程序的用户在他们想要的时候更改默认路由:我有一个参数页面,他们可以在登录时选择他们想要首先显示的"页面".

例如,当他们登录时,他们会重定向到Day,但是他们希望能够更改它并在他们登录时的周或月重定向.

  { path: 'planification', component: PlanificationComponent,
   children: [
   { path: '', redirectTo: 'Day', pathMatch: 'full' },
   { path: 'day', component: DayComponent },
   { path: 'week', component: WeekComponent },
   { path: 'month', component: MonthComponent }]
 }
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

@ angular/core:2.4.7

@ angular/router:3.4.7

谢谢你的帮助!

javascript angular2-routing angular

11
推荐指数
1
解决办法
4548
查看次数

订阅仅触发一次的主题

我创建了一个服务,以便从API获取数据并使用Subject从我的组件中获取这些数据(在应用程序初始化时调用LoadTenants):

服务 :

@Injectable()
 export class TenantService{
  public tenants;
  private tenantSubject = new Subject<any>();

constructor(private http: HttpClient) {
}

LoadTenants() {
    this.http.get(TENANT_URL).subscribe((data: any) => {
        this.tenants = data;
        this.setTenants();
    });
}

setTenants() {
    this.tenantSubject.next(this.tenants);
}

getTenants(): Observable<any> {
    return this.tenantSubject.asObservable();
}

getSyncTenants() {
    return this.tenants;
}
}
Run Code Online (Sandbox Code Playgroud)

组成部分:

public tenant;
subsciption: Subscription;

constructor(private tenantService: TenantService) { }

ngOnInit() {
        this.subsciption = this.tenantService.getTenants().subscribe((datas) => {
            this.tenant = datas;
        },
            error => console.log('Error : ', error)
        );
    }
}

ngOnDestroy() {
    this.subsciption.unsubscribe(); …
Run Code Online (Sandbox Code Playgroud)

subject rxjs angular

0
推荐指数
1
解决办法
577
查看次数

标签 统计

angular ×2

angular2-routing ×1

javascript ×1

rxjs ×1

subject ×1