async / await. Js не попадает в одну строчку

Пишу на чистом JS.

Проблема:

Есть кнопка по нажатию - изменяет департамент в БД.

Попадаю в сервисы, а потом в метод editRequest(), он отрабатывает без проблем.

Но после, мне нужно сделать redirect.

editDepartment = async departmentDto => {
        await basicService.editRequest('/api/rest/departments', departmentDto);// всё ок
        window.location.replace('/api/departments');//пропускает
    }

editRequest = async (url, body) => {
    return await this.sendData(url, body, 'PATCH');
}

sendData = async (url, body = null, method = 'POST') => {
        const headers = {'Content-Type': 'application/json;charset=UTF-8'}
        const init = {
            method: method,
            body: JSON.stringify(body),
            headers: headers
        }

    let response = await fetch(url, init)
        .then(response => {
            if (response.status < 400) {
                return response.json();
            }
        });

    return response;
    }

Если при отладке поставить бряку на строке с ".then(response => {", метода "sendData", то всё отработает как часы. Сижу с этой проблемой уже 2 сутки. Не пойму, где допускаю ошибку.


Ответы (0 шт):