كيفية الحصول على حقول المستخدم في مكون سمة؟

نحن نحاول إنشاء الويدجت (“banner-title”) الذي سيعرض الاسم الأول للمستخدم (لقد أنشأنا الاسم الأول كمجال للمستخدم).
في الويدجت، نقوم بجلب الاسم الأول للمستخدم (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. كيف يمكننا الحصول على user fields بطريقة متزامنة حتى نتمكن من الحصول على قيمة userfields قبل عرض الويدجت.

شكرا.

3 إعجابات