React - рендеринг сложных данных json

Я только начал работать с React, и у меня есть вариант использования, когда мне нужно отображать данные формы, которые уже получены из API. Данные формы довольно сложны, и мне также трудно использовать JSX. Данные можно найти здесь - https://stackblitz.com/edit/react-nhjmzv

Идея состоит в том, чтобы отображать данные в двух разделах, каждый раздел с заголовком и под заголовком, отображать метки формы и их соответствующие значения. Вроде как просмотр формы только для чтения. Данные полностью динамические, поэтому количество пар ключ-значение может увеличиваться.

Любая помощь или направление приветствуются. Я попытался выполнить итерацию в цикле, но React почему-то это не понравилось, и я тоже кое-что узнал об этом. Я также прохожу через другие вопросы SO, когда я публикую это. Заранее спасибо.

Изменить - у меня есть доступ к lodash, если это поможет Изменить 2 - изменена ссылка stackblitz на версию редактирования

Ссылка для редактирования / просмотра: stackblitz.com/edit/react-nhjmzv

Tamilvanan 26.09.2018 08:49
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
1
657
2

Ответы 2

# Новый ответ

This should help you. Beware that I'm learning React too. https://stackblitz.com/edit/react-ytp2wh

# Предыдущий ответ

Вы можете получить данные с помощью метода fetch ().

Документы MDN:

Базовый запрос на выборку действительно прост в настройке. Взгляните на следующий код:

fetch('http://example.com/movies.json')
  .then(function(response) {
    return response.json();
  })
  .then(function(myJson) {
    console.info(JSON.stringify(myJson));
  });

Здесь мы получаем файл JSON по сети и выводим его на консоль.

Затем вместо использования цикла for попробуйте карта() для отображения данных в JSX.

Образец:

 render() {
    return (  
      <div>
        { 
          movies.map((movie) => (          
            <div 
                key = {movie.id} 
                title = {movie.title} 
                description = {movie.description}
                preview = {movie.preview}
            />                      
          ))                    
        }  
      </div>
    )
  }

См. Также Цикл внутри React JSX

Прошу прощения, если я не совсем понял вопрос. Я не собираюсь делать вызов API. У меня уже есть данные после вызова API. У меня проблема с рендерингом объекта json. И данные представляют собой сложный json, который необходимо пройти.

Vishwas 26.09.2018 09:32

Вы должны добавить в свой вопрос структуру JSON (сделайте ее как можно короче), а также то, что вы действительно хотите с ним делать.

Timo 26.09.2018 10:10

Я разместил ссылку на stackblitz, содержащую данные

Vishwas 26.09.2018 10:15

На мой взгляд, лучше разместить на codereview, codereview.stackexchange.com

LLuca 26.09.2018 17:02

Я отредактировал ответ нужным вам фрагментом кода

LLuca 30.09.2018 14:37

Вот примерное решение того, чего вы пытаетесь достичь: Форма React JSON

Другие вопросы по теме