ウィジェット(「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() は非同期で実行されるため、毎回 user fields が null になります。ウィジェットがレンダリングされる前に userfields の値を取得できるように、同期的に user fields を取得するにはどうすればよいですか?
よろしくお願いします。