Есть файл Form.js где есть вот такая часть кода:
/.....
onSubmit: async (formValues) => {
console.log('submit', formValues);
try {
const response = await api('posts', {
method:'POST',
body: JSON.stringify(formValues)
});
console.log('Result!', response);
} catch(e) {
console.error(e);
}
},
/.....
и файл api.js в котором у меня метод fetch:
export const api = (url, args) => fetch(`${apiUrl}${url}`, {
...args,
headers: {
"Content-type": "application/json; charset=UTF-8",
...args.headers,
},
}).then((data)=> data.json());
И все работает хорошо. Результат такой в консоли:
Но я решил переделать в файл api.js синтаксис
then
на
async-await
:
export const api = async (url, args) => {
const response = await fetch(`${apiUrl}${url}`, {
...args,
headers: {
"Content-type": "application/json; charset=UTF-8",
...args.headers,
},
});
const data = await response.json();
}
и теперь у меня выводит в консоли
undefined
. Вот так:
Почему возвращает
undefined
? Что иправить мне в коде?