の複数の解決resolveパラメータのリゾルバパターンを実装します。したがって、このような何か:Angular2ルータおよびUI-ルータには1つのルート
import { Resolve, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';
import { Injectable } from '@angular/core';
import { DashboardService } from '.';
@Injectable()
export class DashboardResolver implements Resolve<any> {
constructor(private dashboardService: DashboardService) { }
resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {
return this.dashboardService.get();
}
}
その後、私のルートに私のようなものを実行します。
import { DashboardComponent } from './dashboard.component';
import { DashboardResolver } from './dashboard.resolver';
export const routes = [
{
path: '',
children: [
{
path: '',
component: DashboardComponent,
resolve: {
data: DashboardResolver
}
}
]
}
];
問題は、唯一の解決があります。 ui-router実装のように複数の解決引数を実装するにはどうすればよいですか?
2つのオプションがあるとします。これらの入力のそれぞれに対してリゾルバを実装するか、解決がすべての解決がネストされたオブジェクトを返すようにします。最初はかなり儀式的に見え、2番目の音はかなりハッキリと聞こえるので、より良い方法が必要です。
あなたはangular2 BTWでUIRouterを進めることができます:)、そうしています。 –
はい、私は知っています。私はちょうど実験している; P – amcdnl
@ amcdnl。これで助けが必要ですか? – AngularChef