(HELP) React Native JSON File слишком большой. Bundler Heap из памяти - PullRequest
0 голосов
/ 26 августа 2018

Во-первых, спасибо, что потратили время, чтобы открыть и прочитать это. Так! Я должен отметить, что я только что начал реагировать нативно 4 недели назад с веб-разработки.

По сути, я делаю приложение, в котором мне нужно импортировать довольно большой JSON-файл с именем cityData.json размером около 23,8 МБ.

Вот пример кода, требующего JSON.

const cityData = require('./dataFolder/cityData.json');

и один элемент массива JSON выглядит следующим образом ...

{ "id": 707860, "name": "Hurzuf", "country": "UA", "coord": { "lon": 34.283333, "lat": 44.549999 } }, 

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

Вот скриншот того, как это выглядит ...

Скриншот терминала терминала

Я потратил около 3 часов, чтобы выяснить, почему это происходит, и многие люди предложили что-то о том, как что-то не должно передаваться? Что-то о трансформации? Извини, как я сказал, что я новичок. Затем они рекомендовали мне «игнорировать»: связка от взаимодействия с моим файлом JSON с использованием .babelrc или package.json? Я не совсем уверен, что они имеют в виду. Я не понимаю синтаксис ** / *. Js. Но я точно знаю, что всякий раз, когда я передаю меньшие файлы JSON, он отлично загружается. Это просто JSON-файл, который очень нравится! Этот индикатор не двигается ...

Как вы можете видеть после прочтения этого параграфа, я действительно плохо отношусь к вещам, связанным с babel и связками. Так что, надеюсь, вы, ребята (которые намного опытнее меня), можете помочь мне с этим!

Примечание. Я попытался добавить «Игнорировать» в файл package.json и .babelrc, но я уверен, что сделал это очень неправильно.

Спасибо за чтение, и я надеюсь, что мы решим это!

Ответы [ 2 ]

0 голосов
/ 25 декабря 2018

Попробуйте этот JSON reader, он предоставит вам элементы JSON в обратных вызовах

https://www.npmjs.com/package/big-json-reader

0 голосов
/ 26 августа 2018

Добавьте <application android:largeHeap="true" ...> к вашему AndroidManifest.xml файлу.

...