Как вызвать объект внутри массива - PullRequest
0 голосов
/ 20 июня 2020

Как я вызываю текстовый doraemon для визуализации компонента

constructor(props) {
        super(props);
        this.state = {
            array: [
            {text:"doraemon",id:1},
            {text:"naruto", id:2},
        ],
    }
}

Я уже пробовал {this.state.array.text}, но это не сработало. Любое решение?

Ответы [ 4 ]

3 голосов
/ 20 июня 2020

Так как this.state имеет в себе массив, вам нужно ссылаться на отдельные элементы массива, или в данном случае:

this.state.array[0].text
this.state.array[1].text

Предположительно, у вас будет al oop или развернуть это с вызовом map() с использованием id в качестве ключа для рендеринга.

Имейте в виду, что вы, вероятно, захотите дать этому свойству описательное имя, отличное от array. Здесь widgets, items или characters лучше, чем что-то слишком очевидное, например array.

0 голосов
/ 20 июня 2020

Массив может содержать много значений под одним именем, и вы можете получить доступ к значениям, указав номер индекса. Итак, если ваш массив содержит объекты как items. Вы можете оценить их, сославшись на них как на простой массив.

В вашем случае это будет выглядеть так:

this.state.array[index].text

0 голосов
/ 20 июня 2020

`Это мой ответ на ваш вопрос, поскольку в реальном мире вы будете постоянно использовать что-то подобное. И это мой первый ответ на переполнение стека


let doraemon = (searchItem) => {
let findDoremon = this.state.array.find(element => element.text === 
searchItem)

return findDoremon.text
}

let fondDoremon = doraemon("doraemon") //<<<<<<<< Here you can enter 
any name that you could like to find

console.log(fondDoremon);
0 голосов
/ 20 июня 2020

попробуйте это:

this.state.array[0].text
this.state.array[1].text
.......................
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...