私は子状態にapiを注入しようとしています。私の状態定義は以下のようになります。子状態で解決策を注入する
もう少し明確にする。 "api"は抽象的に "root"という名前で解決される値でなければなりません。 "root.some2"という名前の子ステートでその値を使用したいと思います。
{
name: 'root',
abstract: true,
resolve: {
provide: 'api',
useFactory: (http) => http
.get(AppRoute.apiUrl)
.map((response: Response) => response.json())
.toPromise(),
deps: [Http]
}
},
{
name: 'root.some2',
url: '/some2',
component: Something2Component,
resolve: [
{
token: 'exercises',
resolveFn: (http, api) => http
.get(api._links.exercises.href)
.map((response: Response) => response.json())
.toPromise(),
deps: [Http, 'api']
}
]
}
しかし、apiは見つかりませんでした。私は以下のエラーが発生しています。
Error: No provider for api!
at NoProviderError.BaseError [as constructor] (errors.js:24)
at NoProviderError.AbstractProviderError [as constructor] (reflective_errors.js:41)
at new NoProviderError (reflective_errors.js:72)
at ReflectiveInjector_._throwOrNull (reflective_injector.js:758)
at ReflectiveInjector_._getByKeyDefault (reflective_injector.js:786)
at ReflectiveInjector_._getByKey (reflective_injector.js:749)
at ReflectiveInjector_.get (reflective_injector.js:558)
at AppModuleInjector.NgModuleInjector.get (ng_module_factory.js:95)
at UIInjectorImpl.getNative (resolveContext.js:178)
at getDependency (resolveContext.js:145)
何が問題になるかについての手掛かりはありますか?
ただし、サービスではありません。私は単に、親状態で解決された値(API)を使用したいと思います。 – user672009