Показать сообщение отдельно
  #4 (permalink)  
Старый 20.01.2021, 07:15
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,775

У вас вот какая ошибка.
function post (postArr) {
	fetch('https://jsonplaceholder.typicode.com/posts', {
		method: 'POST',
		headers: {'Content-type': 'application/json; charset=UTF-8'},
		body: JSON.stringify(postArr),
	})
		.then(first => first.json())
		.then(last => console.log(last));
}


А потом
let k = await post (result())


Функция post не асинхронная и возвращает не Promise.
await должен получить промис, что бы ждать. Если это не промис, то он превращается в сразу разрешенный промис, и поэтому ждать ничего не приходится. В вашем случае Promise.resolve(undefined).

Измените post, что бы она возвращала обещание, так
function post (postArr) {
	return fetch('https://jsonplaceholder.typicode.com/posts', {
		method: 'POST',
		headers: {'Content-type': 'application/json; charset=UTF-8'},
		body: JSON.stringify(postArr),
	})
	.then(first => first.json())
	.then(last => console.log(last));
}

Или так
async function post (postArr) {
	let first = await fetch('https://jsonplaceholder.typicode.com/posts', {
		method: 'POST',
		headers: {'Content-type': 'application/json; charset=UTF-8'},
		body: JSON.stringify(postArr),
	})
        let last = await first.json()
	console.log(last);
}
Ответить с цитированием