===================================== ===========================Passare i parametri del server asp.net all'app Angular 2
EDIT: SOLUZIONE Dopo l'aggiornamento a 2.0 Final - Passing server parameters to ngModule after RC5 upgrade
===== ================================================== ===========
Un modo per passare i parametri del server a un'applicazione Angular 2?
Ad esempio, mi piacerebbe utilizzare l'oggetto MVC "HttpContext.User.Identity.Name" e averlo iniettato ovunque nella mia app angolare 2.
In 1 angolare ciò è stato possibile utilizzando ng ".constant" e serializzando gli oggetti .Net su JSON in index.cshtml.
Sembra che ci sia un modo per passare i parametri ma questo non funziona con il codice .Net. Define global constants in Angular 2
//HTML - Bootstrapping
<script>
System.import('app/main').then(null, console.error.bind(console));
//I WOULD LIKE TO PASS SOME PARAMS TO APP/MAIN HERE
</script>
SOLUZIONE FINALE: (grande grazie a Thierry)
index.cshtml:
<script>
System.import('app/main').then(
module =>
module.main(
{
name: '@User.Identity.Name',
isAuthenticated: User.Identity.IsAuthenticated.ToString().ToLowerInvariant(),
}
),
console.error.bind(console)
);
</script>
main.ts:
...
import {provide} from '@angular/core';
...
export function main(params) {
bootstrap(AppComponent,
[
provide('Name', { useValue: params.name }),
provide('IsAuthenticated', { useValue: params.isAuthenticated }),
ROUTER_PROVIDERS,
HTTP_PROVIDERS,
LoggerService,
AuthenticationService
]);
}
utilizzati:
import {Component, Injectable, Inject} from '@angular/core';
import {ROUTER_DIRECTIVES} from '@angular/router';
@Component({
selector: 'navbar',
templateUrl: 'app/components/header/navbar.html',
directives: [ROUTER_DIRECTIVES]
})
export class SomeComponent {
constructor(@Inject('Name') public username: string) {
}
}
alcuna idea di come questo potrebbe essere fatto dopo RC5? ngModule mi sta dando molti problemi con i miei parametri. – vidalsasoon
Questo non funziona in @Angular RC6. "fornire" non è più supportato in @ angular/core. Qualsiasi soluzione alternativa per favore –
Grazie per i suggerimenti ma dove posso trovare "bootstrap" e "fornire" per favore? – amorel