0
我有有canactivateangular2 CanActivate以http
import {isLoggedIn} from '../login/isLoginedIn';
@CanActivate((next, previous) => {
isLoggedIn()
})
我 「isLoggedIn」 組件是如下
import {Http, Headers} from 'angular2/http';
class Auth {
constructor(@Inject(Http) private _http: Api) { }
check() {
this._http.get('/Users/LoggedInUser')
}
}
export const isLoggedIn =() => {
let injector = Injector.resolveAndCreate([Auth, Http]);
let auth = injector.get(Auth);
return auth.check();
};
我不能注入具有HTTP作爲扶養的服務。這可以這樣做,還是有更好的方法來做到這一點?
偉大的答案,但'CanActivate'是一個裝飾(而不是指令),不是嗎? ;-) –
有無論如何設置具有@CanActivate的組件的屬性?說isLoggedIn也會返回用戶,你想把它扔在組件上? – Primm
@ThierryTemplier你是完全正確的,我霧已經累了昨晚。將更新措辭。感謝您接受這一點。 – SnareChops