Display Cognito user custom attribute in react native app

0

I'm working on a react native app with AWS Amplify. Using fetchUserAttributes() function (from aws-amplify/auth), I get my signed in user info as following :{"custom:category": "particulier", "email": "email@gmail.com", ...} I'm ok manipulating and displaying basic attributes such as email in the app with the following : "const userAttributes = await fetchUserAttributes();" and "userAttributes.email".

However, I don't know how to do it with custom attribute such as "custom:category". I tried to get info with "const {?, email, name, ...} = await fetchUserAttributes();" but, once again, I don't know what to put for category.

I didn't find any information about that in the doc or on any forums.

Thanks in advance !

已提問 2 個月前檢視次數 435 次
1 個回答
1
已接受的答案

You can't directly destructure it like you do with built-in attributes because of the colon in its name. Instead, access it using bracket notation. Here’s how you can do it:

const userAttributes = await fetchUserAttributes();
const category = userAttributes["custom:category"];
profile picture
專家
已回答 2 個月前
  • I did it using : "const { tokens, credentials, identityId, userSub } = await fetchAuthSession(); const { idToken, accessToken } = tokens; idToken.payload['custom:category']" but I prefer your way. Thank you !

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南