Estoy teniendo una matriz con los siguientes valores:
[ { 'Admin1': { id: 'fa1b2731' }, 'Admin2': { id: '7b5ab064' }, 'Admin3': { id: '9f462511' }, 'Admin4': { id: 'aa82421d' }, 'Admin5': { id: '34cb2b' }, 'Admin6': { id: 'ff71ffdd' }, 'Admin7': { id: 'b57ac9e7' } } ]El código que estoy tratando de recuperar cada ID de usuario de la matriz anterior arroja un error-> se esperaba que undefined no sea indefinido. A continuación se muestra el fragmento de código:
if (userArray) { for (const user of Object.values(userArray)) { const delUserRes = await userApi.deleteUserById({ token: accessToken, organizationId: orgid;, userId: user.id });el método anterior lee la matriz de usuario correctamente, pero nunca asigna cada ID a la forma de ID de usuario user.id y arroja un error
La matriz en el ejemplo tiene un elemento, lo que quiero decir para obtener user.id debe llamar a array[0].['Admin1'].id . En su código, lo hace como array.['Admin1'].id , por eso no puede encontrar user.id .
prueba algo como esto
if (userArray) { for (const user of Object.values(userArray[0])) { const delUserRes = await userApi.deleteUserById({ token: accessToken, organizationId: orgid;, userId: user.id });Todos sus usuarios están en un solo elemento del objeto de matriz en el índice 0. intente debajo del código
for (const user of Object.values(userArray[0])) { console.log(user) }Básicamente, está tratando de obtener valores de un objeto dentro de una matriz, por lo que Object.values no tiene sentido en su código. Simplemente puede usar userArray[0] en su bucle o map como:
var data = [ { 'Admin1': { id: 'fa1b2731' }, 'Admin2': { id: '7b5ab064' }, 'Admin3': { id: '9f462511' }, 'Admin4': { id: 'aa82421d' }, 'Admin5': { id: '34cb2b' }, 'Admin6': { id: 'ff71ffdd' }, 'Admin7': { id: 'b57ac9e7' } } ] Object.values(data[0]).map(user => { //your logic here } );