Мы пытаемся создать виджет (“banner-title”), который будет отображать имя пользователя (мы создали поле “first-name” как пользовательское поле).
В виджете мы получаем имя пользователя (user_field) с помощью следующего кода:
let res [];
let currentUser = api.getCurrentUser();
let userfields = null;
if (currentUser) {
api.container.lookup('store:main').find('user', currentUser.username).then((user) => {
userfields = user.user_fields;
});
if(userfields ){
//some code
return res;
}
}
Поскольку метод find() выполняется асинхронно, проблема заключается в том, что каждый раз значение userfields оказывается null. Как получить данные пользовательских полей синхронно, чтобы мы могли получить значение userfields до отрисовки виджета?
Спасибо.