وجدت طريقة لتجاوز تنبيه الإلغاء (deprecation notice) مع الحفاظ على الوصول إلى user_field:
api.getCurrentUser().findDetails().then((user) => { ... });
ومع ذلك، فإن findDetails سترسل دائمًا طلبًا إلى الخادم. لا يوجد أي تخزين مؤقت (cache). بمجرد استدعائها، ستتم تعبئة user_fields للمستخدم الحالي.
لذلك، يمكنك تحسين المنطق قليلاً على النحو التالي:
function withUserFields(user, callback) {
if (user.user_fields === undefined) {
user.findDetails().then(callback);
} else {
callback(user);
}
}
withUserFields(api.getCurrentUser(), (user) => {
// نفعل شيئًا باستخدام user.user_fields[]
});