Size: a a a

2019 October 06

G

GNU/Vsevolod.rs in React Kyiv
Natalia Sabadysh
Привет всем, как выходные?)

Можете пожалуйста посоветовать,  на ComponentDidMount  вызываю 2 Api

А данные приходят в разное время, как можно сделать их синхронно.. ?)
Promise.all([api1(), api2()]).then(([result1, result2]) => { ... })
источник

ЗФ

Затылок выглаженого Фенриза in React Kyiv
Natalia Sabadysh
Привет всем, как выходные?)

Можете пожалуйста посоветовать,  на ComponentDidMount  вызываю 2 Api

А данные приходят в разное время, как можно сделать их синхронно.. ?)
синхронно или последовательно?
источник

NS

Natalia Sabadysh in React Kyiv
GNU/Vsevolod.rs
Promise.all([api1(), api2()]).then(([result1, result2]) => { ... })
😀
в LifeCycle, или в  action?
источник

G

GNU/Vsevolod.rs in React Kyiv
Natalia Sabadysh
😀
в LifeCycle, или в  action?
А у вас редакс?
источник

NS

Natalia Sabadysh in React Kyiv
Затылок выглаженого Фенриза
синхронно или последовательно?
Синхронно
источник

NS

Natalia Sabadysh in React Kyiv
GNU/Vsevolod.rs
А у вас редакс?
Да
источник

NS

Natalia Sabadysh in React Kyiv
Типы будут разными..
источник

TS

Terry Sahaidak in React Kyiv
Natalia Sabadysh
Синхронно
синхронно ніяк) але можна через Promise.all, щоб одночасно два запити зарезолвились

async componentDidMount() {
 const [product, user] = await Promise.all([
   Api.getProduct(1),
   Api.getUserOfProduct(1),
 ]);

 this.setState({ isLoading: false, user, product });
}
источник

NS

Natalia Sabadysh in React Kyiv
Terry Sahaidak
синхронно ніяк) але можна через Promise.all, щоб одночасно два запити зарезолвились

async componentDidMount() {
 const [product, user] = await Promise.all([
   Api.getProduct(1),
   Api.getUserOfProduct(1),
 ]);

 this.setState({ isLoading: false, user, product });
}
Дякую 😀
источник

MK

Max Kovalenko in React Kyiv
Вы настолько юзеров не любите что дергаете апишку синхронно?))
источник

TS

Terry Sahaidak in React Kyiv
якщо редакс, і викорстовується reduxt-thunk, то якщо це асинхронна функція, то її можна зробити await

const getProduct = (id) => async (dispatch) => {
 const product = await Api.getProduct(id);

 dispatch(actions.setProduct(product));
}

async componentDidMount() {
 await this.props.dispatch(getProduct());
}
источник

TS

Terry Sahaidak in React Kyiv
нє, ну в XMLHttpRequest є можливість відправити запит синхронно, але тоді буде блочитись ціла апка)
источник

T

Tolik in React Kyiv
А підписатись на зміну api через reselect і робити всьо в redux-saga — ні?
источник

NS

Natalia Sabadysh in React Kyiv
Max Kovalenko
Вы настолько юзеров не любите что дергаете апишку синхронно?))
У меня Redirect юзера срабатывает на наличии данных с 2х апи,  что делать..
источник

NS

Natalia Sabadysh in React Kyiv
Tolik
А підписатись на зміну api через reselect і робити всьо в redux-saga — ні?
Саги нет, но c reselect тоже можно попробовать

дякую хлопцi)
источник

T

Tolik in React Kyiv
Natalia Sabadysh
Саги нет, но c reselect тоже можно попробовать

дякую хлопцi)
За сагу — це ви дарма. Нмзщ
источник

OC

Ostap Chervak in React Kyiv
А хіба reselect не discontinued?
источник

T

Tolik in React Kyiv
Хіба разом із редаксом
источник

MK

Max Kovalenko in React Kyiv
Natalia Sabadysh
У меня Redirect юзера срабатывает на наличии данных с 2х апи,  что делать..
Синхронный запрос блокирует интерфейс какбе вообще
источник

SG

Stas G in React Kyiv
Terry Sahaidak
синхронно ніяк) але можна через Promise.all, щоб одночасно два запити зарезолвились

async componentDidMount() {
 const [product, user] = await Promise.all([
   Api.getProduct(1),
   Api.getUserOfProduct(1),
 ]);

 this.setState({ isLoading: false, user, product });
}
Синхронно можно, но не нужно)
источник