Я использую typescript
в моем приложении «Реакция / Избыток». Есть ошибка типа, которую я не понимаю.
Ниже мой код действия:
import { createAction } from 'redux-actions';
export enum ProductActionType {
SEARCH_STAMP = 'SEARCH_STAMP',
SEARCH_PRODUCT = 'SEARCH_PRODUCT',
};
export interface ProductActionProps {
text: string;
}
const searchStamp = createAction<ProductActionProps>(ProductActionType.SEARCH_STAMP);
Ниже мой редуктор:
import { handleActions } from 'redux-actions';
import { ProductActionType, ProductActionProps } from '@ap-actions/index';
export const productReducer = handleActions<Product, ProductActionProps>(
{
[ProductActionType.SEARCH_STAMP]: (state, { payload }) => { // here why payload type is ProductActionProps | undefined?
...
}
}, initialState
);
Проблема связана с типом payload
внутри handleActions
. Его тип ProductActionProps | undefined
. Я должен проверить, является ли payload
undefined
в теле функции. Но я не понимаю, почему тип принимает undefined
?