Я предполагаю, что из ваших комментариев и кода вы пытаетесь реализовать некоторое поведение пользовательского интерфейса при ответе какой-либо службы (LoginService). Этот код подходит для библиотеки или для службы. Но в какой-то момент вам нужно знать результат, в какой-то момент вам нужно subscribe()
к наблюдаемой, которую вы создаете, чтобы узнать его результат
В конце вызовите subscribe()
. В противном случае ваша наблюдаемая никогда не материализуется.
ОБНОВЛЕНИЕ
Помимо вызова subscribe()
, вам нужно перейти к /home
url и затем в компоненте, который обрабатывает это route load your business: new businessActions.LoadBiz()
ваш код должен выглядеть так:
@Effect({ dispatch: false })
LogInSuccess$: Observable<any> = this.actions$.pipe(
ofType<businessActions.LogInSuccess>(
businessActions.AuthActionTypes.LOGIN_SUCCESS
),
map((action: businessActions.LogInSuccess) => {
localStorage.setItem('token', JSON.stringify(action.payload));
})
).subscribe(() => this.navCtrl.navigateRoot('/home'));
тогда, где бы вы ни обрабатывали /home
route, в методе init () компонента new businessActions.LoadBiz()
или, что еще лучше, извлеките businessActions
logi c в службу, внедрите службу и позвоните: businessActions.LoadBiz()
тогда не нужно звонить new
в пользовательском интерфейсе.