2015-07-16 9 views

Odpowiedz

3

Jednym ze sposobów (nie wiem, optymalna jeden) aby uzyskać dostęp do prądu moduleId jest w activate haku swojej klasie:

activate(params, routeConfig) { 
    console.log(routeConfig.moduleId); 
} 
+0

to "aktywuj" na wszystkich zajęciach? jeśli tak, czy mógłbyś go udekorować? (to może być zupełnie inne pytanie, w sumie –

+0

tak, istnieje "aktywuj" hook dostępny dla każdej klasy viewmodel, nie jestem pewien co do jego dekoracji, możliwe jest również wstrzyknięcie routera do viewmodel i sprawdzenie jego 'currentInstrustion.config.modelId', ale nie jest to miłe, – dfsq

+0

spowoduje to jedynie powrót do konfiguracji bieżącej trasy, a nie routera. Odpowiedź @Greg Gum jest poprawna. – vidriduch

1

drodze do uzyskania odwołanie do aktualnego routera:

import {inject} from 'aurelia-framework' 
import {router} from 'aurelia-router' 

@inject(router) 
constructor(router) 
{ 
    this.router = router; //Do something with router. 
} 

Uwaga: Nie wstrzykiwać "AppRouter" To jest inny router. Jeśli dodasz trasę do AppRoutera, nie będzie działać. Będzie działać, jeśli importujesz router.

Powiązane problemy