Cercando di utilizzare RouteParams per ottenere i parametri di query-string, ma ho appena ottenere l'erroreangolare 2 errore: Impossibile risolvere tutti i parametri per '' 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.......
Dai un'occhiata a questo Plnkr. Come posso utilizzare RouteParams senza ricevere questo avviso?
I file importanti sono:
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]);
e 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');
}
}
Aggiornamento:
io non sto avendo alcun percorsi, ho solo avere la root route predefinita (se è possibile chiamarla route quando non ho altri percorsi ...). Ma, come suggerito da Gianluca, ho aggiunto il seguente itinerario config:
@RouteConfig([
{ path: '/:guid', name: 'Home', component: AppComponent, useAsDefault: true },
])
Ma ancora ottengo lo stesso errore (il Plnkr viene aggiornato) ...
da dove proviene questo 'guid'? se non hai nessun percorso? –
È solo una querystring di cui ho bisogno per la mia app, quindi qualcuno lo userebbe in questo modo: mydomain.com/myapp?guid=qualcosa. Potresti averlo chiamato qualcos'altro qui, come "testparamenter" o qualcosa del genere ... – EricC
ho appena postato la mia risposta spero che ti possa aiutare. –