Непосредственный вызов loadRolesData возвращает Promise, а не готовые роли. В state для данных нужно записать результат после await или then.
Если функция loadRolesData возвращает Promise, чему будет равно значение после её вызова? Можно ли записать Promise в state, предназначенный для данных, и как это исправить?
Непосредственный вызов loadRolesData возвращает Promise, а не готовые роли. В state для данных нужно записать результат после await или then.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Непосредственный вызов loadRolesData возвращает Promise, а не готовые роли. В state для данных нужно записать результат после await или then.
В async-обработчике это может быть const roles = await loadRolesData(); setRoles(roles); с обработкой ошибки и loading. Если загрузка связана с параметром или размонтированием, проверьте актуальность результата. Хранение Promise допустимо лишь в специально спроектированном контракте, а не как случайная замена массива ролей.