Size: a a a

React: русскоязычное сообщество

2021 April 02

G

Galgameth in React: русскоязычное сообщество
Можно ссылку на GitHub?
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Какую?
источник

G

Galgameth in React: русскоязычное сообщество
<form className="searching-form" onSubmit={(e, urlAdress) => getData(e, urlAdress)}>
источник

G

Galgameth in React: русскоязычное сообщество
он вызывается при отправке формы
источник

G

Galgameth in React: русскоязычное сообщество
поэтому и preventDefault, чтобы не перезагружал
источник

Ю

Юрий in React: русскоязычное сообщество
export const getList = (ids = null) => async dispatch => {
   const url = ids !== null ? `${BASE_URL}/api/goods/?dealers=${ids}` : `${BASE_URL}/api/goods/`;
   try {
       const res = await axios({
           baseURL: url,
           method: "GET"
       })
       dispatch({
           type: LOAD_PRODUCT_LIST,
           payload: res.data,
       })
   } catch (err) {
       dispatch({
           type: LOAD_PRODUCT_LIST,
           payload: []
       })
   }
}
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Уберите async
источник

Ю

Юрий in React: русскоязычное сообщество
   useEffect(() => {
       dispatch(getList(dealers))
   }, [dealers])
источник

G

Galgameth in React: русскоязычное сообщество
мне вот вариант Юрия больше импонирует
источник

G

Galgameth in React: русскоязычное сообщество
мне кажется, у меня await не хватает
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Нет
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
У вас возвращается промис
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
А надо без промиса
источник

Ю

Юрий in React: русскоязычное сообщество
сорян, изменил последний кусок
источник

G

Galgameth in React: русскоязычное сообщество
Юрий
export const getList = (ids = null) => async dispatch => {
   const url = ids !== null ? `${BASE_URL}/api/goods/?dealers=${ids}` : `${BASE_URL}/api/goods/`;
   try {
       const res = await axios({
           baseURL: url,
           method: "GET"
       })
       dispatch({
           type: LOAD_PRODUCT_LIST,
           payload: res.data,
       })
   } catch (err) {
       dispatch({
           type: LOAD_PRODUCT_LIST,
           payload: []
       })
   }
}
Спасибо. Сделал наподобие и все работает
источник

VC

Valera CSS_Junior in React: русскоязычное сообщество
подскажите пожалуйста в редюсере, в редаксе который, мы всегда делаем defoult: return state. зачем это? ведь редюсеры все вызываются насколько я знаю, а если action type не совпал с case, то ну и что? у следующего редюсера совпадет и он стейт изменит, но зачем возвращать стор по дефолту не понятно.
источник

PE

Pavel Ermolin in React: русскоязычное сообщество
Первый вызов редюсера происходит в самом начале и он без экшн
источник

PE

Pavel Ermolin in React: русскоязычное сообщество
Типа должен вернуть инишал стейт
источник

VC

Valera CSS_Junior in React: русскоязычное сообщество
Pavel Ermolin
Типа должен вернуть инишал стейт
спасибо. понятно
источник

VC

Valera CSS_Junior in React: русскоязычное сообщество
а так же не обязательно писать как на скрине? вроде можно типо return {...state, counter: 0}? или есть разница?
источник