Como fazer axios síncrona

Estou usando o axios para verificar se um alias ainda não foi usado por outro no banco de dados.

Problema: A chamada ajax não espera pela resposta do servidor para executar o código restante.

O código se parece com:

export default {
    data () {
        return {
            id: null,
            alias: null,
            valid: true,
        }
    },

    methods: {
        // triggered by the save button
        save () {
            this.valid = true;
            console.log('before checking');

            this.checkUniqueness();
            // other validations here

            if (this.valid) {
                console.log('3. checked valid, can save now');
                // save now
            }
        },

        checkUniqueness () {
            axios.get('/api/unique/alias', {
                params: {
                    id: this.id,
                    alias: this.alias,
                }
            })
                .then((response) => {
                    console.log('2. server response:' + response.data.unique)
                    this.valid = response.data.unique;
                });
        },

    },
}

O console mostra o seguinte resultado:
1. before checking
3. checked valid, can save now
2. server response:false

Não consigo mover o código dosave() método em.then porque faço outras validações nos dados de entrada, como caracteres alfanuméricos, mínimo de caracteres ...

Consegui adiar a terceira parte (if (this.valid) {) usando setsetTimeout mas não é a melhor solução. e se o servidor demorar mais ou menos que o tempo de espera definido ..

Pergunta, questão Existe uma maneira de tornar essa chamada seqüencial (1, 2, 3) em vez de (1, 3, 2)?

questionAnswers(1)

yourAnswerToTheQuestion