Estamos tentando criar o widget (“banner-title”) que exibirá o primeiro nome do usuário (criamos o primeiro nome como um campo de usuário).
No widget, estamos buscando o primeiro nome do usuário (campo_usuario) usando o código abaixo:
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 ){
//algum código
return res;
}
}
Aqui, find() é executado de forma assíncrona, então o problema é que sempre obtemos os campos do usuário como nulos. Como obter os campos do usuário de forma síncrona para que possamos obter o valor de userfields antes que o widget seja renderizado.
Obrigado.