Entonces mi código es:

class MyComponent extends Component { constructor(props) { super(props); this.state = { myArray: [ {id:1, continent:[ {id:1, name: 'Russia'}, {id:2, name: 'Germany'}, {id:3, name: 'Poland'} ]}, {id:2, continent:[ {id:1, name: 'China'}, {id:2, name: 'India'}, {id:3, name: 'Bangladesh'} ]}, {id:3, continent:[ {id:1, name: 'Brazil'}, {id:2, name: 'Peru'}, {id:3, name: 'Chile'} ]} ], otherValue: 23 } } subBoardList(id){ return this.state.myArray[id].map((continent) ={amp}gt; { return( {amp}lt;View{amp}gt; {amp}lt;Text{amp}gt;{continent.name}{amp}lt;/Text{amp}gt; {amp}lt;/View{amp}gt; ) }) } render() { return ( {this.subBoardList(2)} ); } } 

Quiero mostrar el contenido de la matriz de continentes cuyo id se pasa a la función subBoardList . ¿Cómo puedo hacer eso?

Error:

 TypeError: undefined is not an object (evaluating 'this.state.myArray[id].map') 

Deberías estar usando:

 this.state.myArray[id].continent.map(... 
 class MyComponent extends Component { constructor(props) { super(props); this.state = { myArray: [ {id:1, continent:[ {id:1, name: 'Russia'}, {id:2, name: 'Germany'}, {id:3, name: 'Poland'} ]}, {id:2, continent:[ {id:1, name: 'China'}, {id:2, name: 'India'}, {id:3, name: 'Bangladesh'} ]}, {id:3, continent:[ {id:1, name: 'Brazil'}, {id:2, name: 'Peru'}, {id:3, name: 'Chile'} ]} ], otherValue: 23 } } subBoardList(id){ return this.state.myArray[id].continent.map((continent) ={amp}gt; { // You need to add continent key after myArray since // index 2 = {id:3, continent:[ // {id:1, name: 'Brazil'}, // {id:2, name: 'Peru'}, // {id:3, name: 'Chile'} //]} return( {amp}lt;View{amp}gt; {amp}lt;Text{amp}gt;{continent.name}{amp}lt;/Text{amp}gt; {amp}lt;/View{amp}gt; ) }) } render() { return ( {amp}lt;div{amp}gt; {this.subBoardList(2)} {amp}lt;/div{amp}gt; // Add a div after return it's import to render anything ); } } 

Intenta así.

Si desea buscar por id e id no se comporta como un índice, por ejemplo, id puede ser cualquier número (10,11,12 o 120,155,254 …), su subBoardList debería ser así

  subBoardList(id) { return this.state.myArray.map(item ={amp}gt; { if (item.id === id) { return item.continent.map(c ={amp}gt; { return {amp}lt;li{amp}gt; {c.name} {amp}lt;/li{amp}gt;; }); } else return null; }); } 

muestra