W mojej aplikacji Angular 2 mam tę konfigurację trasy.
@RouteConfig([
{ path: "/", name: "Welcome", component: WelcomeComponent, useAsDefault: true },
{ path: "/ticket", name: "Ticket", component: TicketComponent },
{ path: "/payment", name: "Payment", component: PaymentComponent },
{ path: "/receipt", name: "Receipt", component: ReceiptComponent },
{ path: "/login", name: "Login", component: LoginComponent },
{ path: "/services", name: "Services", component: ServicesComponent },
{ path: "/email", name: "Email", component: EmailComponent },
{ path: "/used-services", name: "UsedServices", component: UsedServicesComponent }
])
Jeśli użytkownik wpisz adres URL http://localhost:8080/receipt i inne (płatności itp.) Muszę go przekierować na stronę główną (/). Nie można przejść na stronę paragonu, ponieważ on / ona nie wybiera rodzaju biletu. Jak mogę utworzyć reguły routingu / przekierowania? Na przykład / bilet powinien być dozwolony.
Muszę też rozwiązać lokalizację aplikacji - teraz jatłumaczyć aplikację w konstruktorze (żądanie GET na zapleczu) AppComponent, ale jeśli użytkownik przejdzie bezpośrednio na stronę / bilet, tłumaczenie AppComponent nie jest wywoływane - aplikacja nie jest tłumaczona. Dzięki
Odpowiedzi:
1 dla odpowiedzi № 1 // on type ticket can save that it localstorage like...
localStorage.setItem("tickType", "Bus");
// and in receipt page check this local storage tickType exixt or not
if(localStorage.getItem("tickType")) {
console.log(true);
} else {
console.log(false);
this.router.navigate( ["/Welcome"]);
}