NGRX Угловой сервис - использование геттера созданного выбора - PullRequest
0 голосов
/ 24 октября 2018

Я хотел бы иметь службу, где я могу получить селекторы ngrx.Хорошей ли практикой является использование createSelector непосредственно в select?

@Injectable()
export class LoginSelector{

    get data$() {
        return this.store.pipe(
            select(<b>createSelector</b>(
                this.loginState,
                function (state) {
                    return state && state.data;
                }
            ))
        );
    }

    constructor(
        protected storeActions$: Actions,
        protected store: Store<StoreState>,
    ) {}
}

Возможно, нет, потому что createSelector перезапускает всегда новый MemoizedSelector

const selectData = <b>createSelector</b>(
  this.loginState,
  function (state) {
    return state && state.data;
  }
);

@Injectable()
export class LoginSelector{

  get data$() {
    return this.store.pipe(
      select(selectData)
    );
  }

  constructor(
    protected storeActions$: Actions,
    protected store: Store<StoreState>,
  ) {}
}

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...