Próba użycia RouteParams uzyskać parametry ciąg kwerendy, ale ja po prostu pojawia się błądkątowa 2 Błąd: Nie można rozwiązać wszystkie parametry dla „RouteParams”
Cannot resolve all parameters for 'RouteParams'(?). Make sure that all the parameters are decorated with Inject or have valid type annotations and that 'RouteParams' is decorated with Injectable. angular2-polyfills.js:332 Error: Cannot read property 'getOptional' of undefined.......
Sprawdź tę Plnkr. Jak mogę korzystać z RouteParams bez otrzymania tego ostrzeżenia?
ważnych plików są:
boot.ts
:
import {bootstrap} from 'angular2/platform/browser';
import {ROUTER_PROVIDERS, RouteParams} from 'angular2/router';
import {AppComponent} from './app/app.component';
bootstrap(AppComponent, [ROUTER_PROVIDERS, RouteParams]);
i app.component.ts
:
import {Component, OnInit} from 'angular2/core';
import {RouteParams} from "angular2/router";
@Component({
selector: 'app',
template: `
<p *ngIf="guid">guid gived is: {{guid}}</p>
<p *ngIf="!guid">No guid given in query-string in URL</p>
`
})
export class AppComponent implements OnInit {
guid:string;
constructor(private _params: RouteParams) {} //
ngOnInit() {
this.guid = this._params.get('guid');
}
}
Aktualizacja:
ja nie mam żadnych tras, po prostu mieć domyślną trasę główną (jeśli w ogóle można ją nazwać trasą, gdy nie mam innych tras ...). Ale jak sugeruje Gianluca, dodałem następujące config trasy:
@RouteConfig([
{ path: '/:guid', name: 'Home', component: AppComponent, useAsDefault: true },
])
ale wciąż otrzymuję ten sam błąd (the Plnkr jest aktualizowany) ...
skąd pochodzi ten "guid"? jeśli nie masz żadnej trasy? –
To tylko kwerenda potrzebna mojej aplikacji, więc ktoś użyłby jej w ten sposób: mydomain.com/myapp?guid=something. Mogłem nazwać to coś innego tutaj, jak "testament" lub coś takiego ... – EricC
Właśnie napisałem swoją odpowiedź, mam nadzieję, że ci pomogę. –