Я пытаюсь подключить свой довольно большой json-файл и вывести из него информацию в react, но получаю ошибку .map is not a function. Сам файл выглядит так:
{
"0": {
"Title":"Qwe","Url":"test"
},
"1": {
"Title":"Qwe2","Url":"test2"
}
}
Вывести я его пытаюсь вот так:
const json = require('./f.json');
...
{json.map((item, index) => item.Title)}
Если json-файл привести к такому виду, то всё будет нормально
[{
"Title":"Qwe","Url":"test"
},
{
"Title":"Qwe2","Url":"test2"
}]
Но меня это не устраивает, так как имеется довольно много больших файлов, которые отформатированы в стиле первого примера. Можно ли с этим что-то сделать?
Дело в том, что вы работаете не с массивом, а с объектом,а у него нет встроенного метода map. Вы можете использовать метод Object.keys и перебрать массив ключей вашего объекта
Object.keys(json).map((item, index) => json[item].Title);
Более подробно: https://stackoverflow.com/questions/14810506/map-function-for-objects-instead-of-arrays
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости