@bazliiii

Тип {} не может быть назначен для типа «ReactNode». как решить?

Ошибка: Тип "defState" не может быть назначен для типа "ReactNode".
код:
interface defState{
    cash: number;
}
interface defAction {
    type: string;
    payload?: any;
}
const defaultState: defState = {
    cash: 0
}

export const CashReducer = (state = defaultState, action: defAction): defState => {
    switch (action.type) {
        case ADD_NUMBER:
            return { ...state, cash: state.cash + action.payload }
        case DEL_NUMBER:
            return { ...state, cash: state.cash - action.payload }
        default:
            return state
    }
}

Код страницы tsx:
function Pluser() {
    const dispatch = useDispatch()
    const cash = CashTypeSelector(state => state.cash)

    return (
        <div className='pluser'>
            <div className="container">
                <div className="pluser__inner">
                    <div className="pluser__top">
                        <button className="pluser__btn">plus</button>
                        <p className="pluser__text">{cash}</p>
                        <button className="pluser__btn">minus</button>
                    </div>
                </div>
            </div>
        </div>
    )
}

export default Pluser


Если что-то дополнительно нужно добавить пишите , не могу найти решение в интернете надеюсь на вас
  • Вопрос задан
  • 835 просмотров
Решения вопроса 1
Alexandroppolus
@Alexandroppolus
кодир
const cash = CashTypeSelector(state => state.cash)

Судя по ошибке, в cash попадает не число, а объект {cash: number}

Что такое CashTypeSelector? Что лежит в Редуксе?

как исправить
const cash = CashTypeSelector(state => state.cash.cash);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы