Как установить значение объекта по одному в текстовое поле с помощью функции карты в reactjs

#javascript #arrays #reactjs #object

Вопрос:

Я визуализирую текстовый файл с помощью функции map в соответствии с моим массивом. Теперь у меня есть объект, и мне нужно установить значение этого объекта в отображаемое текстовое поле по одному. Но я не знаю, как это сделать.

Это моя цель —

 const myObject={en: 'This is a good store', fr: "C'est un très bon magasin", ja: 'これは完全に良い店です'};  {  locals.map((item, index) =gt; {  return basicDetails(item, index, myObject);  })  }  const basicDetails = (item, index, myObject) =gt; {  return (  lt;Gridgt;  lt;Grid item xs={12}gt;  lt;CssTextField  value={myObject}  autoFocus  fullWidth  variant="outlined"  label="Shop Tagline"  /gt;  lt;/Gridgt;  ); };  

Мне просто нужно установить значение моего объекта одно за другим в текстовое поле. Я пытаюсь сделать это, мой результат — [объект-объект].

введите описание изображения здесь

Ответ №1:

Вы получаете [объект Object], потому что значение, которое вы передаете CssTextField компоненту, — это весь ваш объект, а не один из его атрибутов.

Я не уверен, что locals содержит, но я предполагаю, что вам нужно это изменить

 locals.map((item, index) =gt; {  return basicDetails(item, index, myObject); })  

для этого предположим, что locals-это массив, содержащий такие значения, как ['en', 'fr', 'ja'] .

 locals.map((item, index) =gt; {  return basicDetails(item, index, myObject[item]); })