Как преобразовать jquery post API в ES6 fetch?

#javascript #jquery #refactoring

Вопрос:

Поэтому я хочу реорганизовать свой код с jquery на просто javascript ES6, я думаю, что он будет чище, если будет реализован таким образом. Но я не уверен, как это реализовать, Вот код jquery :

 $.post({
        url: /* my url */
        data: { /* my data*/ }

        beforeSend: () => {
            //do something
        },

        success: (res) => {
            //do something            
        },

        error: (err) => {
            console.error(err)
        },

        complete: () => {
            //do something
        }
    })
 

Как выполнить рефакторинг в ES6, чтобы он выглядел примерно так :

 fetch(url, {
        method: 'POST',
        body: /* my data */
    })
     // beforeSend code
    .then((res) => res.json())
    .then((data) => {
        //do something
    })
    // complete code
    .catch((err) => console.log(err));
 

Я буду очень признателен, если вы сможете написать код с асинхронным ожиданием, но .then() .catch() все равно буду признателен. Заранее спасибо