Правильно я делаю асинхронные запросы?

Подскажите правильно ли я делаю, мне кажется что код повторяется и можно как-то его по другому написать
created(){
            setTimeout(() => {
                let employeeApi = new restApi(this.$props.data_table);
                employeeApi.list().then(res => {
                    this.items = res.data;
                });
            });
            setTimeout(() => {
                let employeeColumn = new restApi(this.$props.data_columns);
                employeeColumn.list().then(res => {
                    this.columns = res.data;
                })
            });
        }

То есть я хочу чтобы одновременно отправились запросы на сервер и не по очереди
  • Вопрос задан
  • 93 просмотра
Решения вопроса 1
Fragster
@Fragster
помогло? отметь решением!
Надо как-то так:
let employeeApi = new restApi(this.$props.data_table);
                let employeeColumn = new restApi(this.$props.data_columns);
                let arr = [employeeApi.list(), employeeColumn.list()];
                Promise.All(arr).then(res=> {
                  this.items = res[0].data;
                	this.columns = res[1].data;
                });


А вообще есть bluebirdjs.com/docs/api-reference.html в котором есть .spread, .delay, .promisify и куча других синтаксических плюшек
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы