Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // App.js
- import Analytics from '@aws-amplify/analytics';
- import Auth from '@aws-amplify/auth';
- // ...
- const mapObj = f => obj =>
- Object.keys(obj).reduce((acc, key) => ({ ...acc, [key]: f(obj[key]) }), {});
- const toArrayOfStrings = value => [`${value}`];
- const mapToArrayOfStrings = mapObj(toArrayOfStrings);
- async function trackUserId() {
- try {
- const { attributes } = await Auth.currentAuthenticatedUser();
- const userAttributes = mapToArrayOfStrings(attributes);
- Analytics.updateEndpoint({
- address: attributes.email,
- channelType: 'EMAIL',
- optOut: 'NONE',
- userId: attributes.sub,
- userAttributes,
- });
- } catch (error) {
- console.log(error);
- }
- }
- function App() {
- useEffect(() => {
- trackUserId();
- }, []);
- return // ...
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement