select
info
Selector function to get data from reducer.
- TypeScript
- JavaScript
controller.ts
import { select } from 'redux-saga/effects';
// NOTE action shortcut
interface Act<Payload> extends Action {
payload: Payload
}
// NOTE action payloads
interface InitializePayload {
some: string;
}
interface IInitial {
initialized: boolean;
disabled: boolean;
data: UserData | null
}
function * initializeSaga ({ type, payload } : Act<InitializePayload>) {
const { initialized }: IInitial = yield select(controller.select);
// ...
}
index.ts
import { controller } from './controller';
import { useDispatch, useSelector } from 'react-redux';
function User() {
const { initialized } = useSelector(controller.select);
// ...
}
controller.js
import { select } from 'redux-saga/effects';
function * getSelfSaga() {
const { initialized } = yield select(controller.select);
// ...
}
index.js
import { controller } from './controller';
import { useDispatch, useSelector } from 'react-redux';
function User() {
const { initialized } = useSelector(controller.select);
// ...
}