при использовании хуков и реакции-выбора у меня есть эта ошибка: TypeError: Object() не является функцией

Я использую реакцию-выбор и перехожу от компонента к хукам. Я надеюсь, что это было более комфортно.

Когда я добавляю задачу в associatedTodos, я получаю эту ошибку:

TypeError: Object(...) не является функцией

Я использую реакцию-выбор, вместо componentDidMount я использую useEffect и для выполнения действия я использую useDispatch, а для выбранного значения и setValue из onChange я использую useState.

Это мой код:

import React, {
    useState,
    useEffect,
    useDispatch
} from 'react';

import Select from 'react-select';
import "./styles.css";

import {
    searchTodos
} from '../../actions/ServiceActions';



const SelectInput = ({
    label,
    input,
    width,
    placeholder,
    meta: {
        touched,
        error
    },
    ...rest
}) => {
    const [todo, setTodo] = useState();

    const dispatch = useDispatch();

    useEffect(() => {
        dispatch(this.props.searchTodos());
    }, [])
    return ( <
        div className = 'form-container' >
        <
        label forname = {
            input.name
        } > {
            label
        } < /label> <br / >
        <
        Select {
            ...rest
        }
        placeholder = {
            !input.value ? 'please, select a todo' : input.value
        }
        selected = {
            input.value ? input.value : null
        }
        onBlur = {
            input.onBlur
        }
        value = {
            tarea
        }
        onChange = {
            setTodo
        }
        options = {
            dispatch(this.props.searchTodos())
        }
        className = 'form-control' /
        >
        <
        div className = 'text-danger'
        style = {
            {
                marginBottom: '20px'
            }
        } > {
            touched && error
        } <
        /div> <
        /div>
    );
};

export default SelectInput;

Я хотел бы знать, какой метод заменяет подключение. Метод Connect служит только для компонента класса. Какой метод, эквивалентный соединению, служит функциональному компоненту для получения всех задач от редуктора с помощью перехватчиков реакции.

Вы можете руководствоваться Используя response-select, у меня возникла следующая проблема: невозможно прочитать значение свойства undefined

чтобы объяснить, как я могу выбрать определенную задачу и изменить значение с помощью хуков, используя todoList в качестве редуктора и хуков.

Все, что я хочу, это найти определенную задачу через редуктор todoList, выбрать определенную задачу, изменить значение задачи в раскрывающемся списке (выбрать компонент) и получить список задач через действие «searchTodos» с помощью хуков.


person CatMouse2020    schedule 02.03.2020    source источник
comment
В настоящее время вы пытаетесь импортировать useDispatch из react. Вы хотели сделать import { useDispatch } from 'react-redux'?   -  person Nicholas Tower    schedule 02.03.2020
comment
Я импортировал useDispatch из 'react-redux' и получил эту ошибку': 1] Ошибка при попытке импорта: 'useDispatch' не экспортируется из 'react-redux'.   -  person CatMouse2020    schedule 02.03.2020
comment
какая версия реакции-редукта у вас есть?   -  person Nicholas Tower    schedule 02.03.2020
comment
Недавно 7.2 запускается, но у меня проблема: Withref удаляется. Пожалуйста, добавьте ссылку в подключенный компонент.   -  person CatMouse2020    schedule 02.03.2020