Задать вопрос
@Apostol63

Как продолжить выполнение кода только после axios?

Всем доброго дня.
Я наспех написал такой вот простенький валидатор:
validateNewUserInfo() {
	        this.errors = [];
            if(!this.newUserData.name) {
                this.errors.push('Укажите имя');
            }
            if(!this.newUserData.lastName) {
                this.errors.push('Укажите фамилию');
            }
            if(!this.newUserData.secondName) {
                this.errors.push('Укажите отчество');
            }
            if(!this.newUserData.phone) {
                this.errors.push('Укажите телефон');
            }
            if(!this.newUserData.password) {
                this.errors.push('Укажите пароль');
            }
            if(!this.newUserData.login) {
                this.errors.push('Укажите логин');
            }
            if(!this.newUserData.email) {
                this.errors.push('Укажите почту');
            } else if(!this.validMail(this.newUserData.email)) {
                this.errors.push('Укажите корректный адрес электронной почты');
            }
            if(!this.newUserData.role) {
                this.errors.push('Выберите роль');
            }
            var data = {};
            data = {'login': this.newUserData.login};
            axios.post('checkfield', {params: data}).then(response => {
                if(response.data !== 1) {;
                    this.errors.push(response.data);
                }
            });
            if(!this.errors.length) {
                return true;
            }

        },


В конце проверяется кол-во элементов в массиве errors и если их там нет, то возвращается true. Однако если через axios мне в этот самый массив попадет элемент (означает, что такой логин существует), то true уже вернется. Как мне с этой проблемой можно справиться?
Заранее спасибо
  • Вопрос задан
  • 172 просмотра
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
Fragster
@Fragster
помогло? отметь решением!
axios.post возвращает промис, https://learn.javascript.ru/promise
после того, как станет понятно, что это такое, можно переходить к async https://learn.javascript.ru/async-await
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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