1

シンプルなangular 2アプリシードがあります。シンプルなブートストラップ。

bootstrap(App, [
    ROUTER_PROVIDERS,
    provide(LocationStrategy, {useClass: HashLocationStrategy})
]);

アプリはいくつかのルートを設定します。

@RouteConfig([
    {path: '/', component: Home, as: 'Home'},
    {path: '/login', component: Login, as: 'Login'}
])

ここには派手なものはありません。私が行っていることの 1 つは OAuth2 ログインです。これは、アプリからリダイレクトしてから戻ってきます。そのため、私がやりたかったのは、ロード時にクエリ パラメータを渡すことでした。http://localhost/#?token=123 私が取得し続けるエラーに基づいて、これのようなもの: Angular 2 で URLSearchParams を利用する方法RouteParamsルーターによって作成されていないため、App のコンストラクターに注入することはできないようです。

では、ロード時にクエリ パラメータを取得するにはどうすればよいでしょうか。router-outletルーターを介してフローできるようにするためだけに、Appに空のコンポーネント(AppRootなど)を作成させる必要がありますか? それは多くの不必要なオーバーヘッドのようです..誰かがより良い方法を知っていますか?

4

1 に答える 1