Size: a a a

React Native — русскоговорящее сообщество

2020 July 23

AK

Alexey Kondratev in React Native — русскоговорящее сообщество
пагади, так если ты не знаешь сколько тебе с базы придет карточек, как ты будешь изображения к ним в ассеты добавлять?
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
да
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
я уже это поняла
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
просто сейчас у меня нет контента и я забила тестовым чем попало и сейчас пытаюсь прояснить этот вопрос
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
насколько вообще нужно такое из базы получать
источник

JS

Jura Semenenko in React Native — русскоговорящее сообщество
Дарья Ромашкина
просто сейчас у меня нет контента и я забила тестовым чем попало и сейчас пытаюсь прояснить этот вопрос
Если у тебя картинка будет лежать в памяти телефона то ты просто по path ее в uri прокинешь. Если там будет ссылка на картинку на сервере то опять же просто ссылку в uri. Если там будет название картинки в ассетах РН которые нужно через require подключать, то звучит как чтото странное, но в любом случае можно создать обьект ассетов. Так как ты будешь знать какие ассеты у тебя есть.
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
Jura Semenenko
Если у тебя картинка будет лежать в памяти телефона то ты просто по path ее в uri прокинешь. Если там будет ссылка на картинку на сервере то опять же просто ссылку в uri. Если там будет название картинки в ассетах РН которые нужно через require подключать, то звучит как чтото странное, но в любом случае можно создать обьект ассетов. Так как ты будешь знать какие ассеты у тебя есть.
Я сама во всем запуталась, спасибо, сейчас вроде бы проясняется. Я точно знаю, что ссылки на картинку на сервере там не будет, по той причине, что сервера нет, приложение само по себе очень простое, потому есть только база, к которой я подключаюсь через typeorm.
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
Я правильно понимаю, что в таком случае я должна или положить картинки конкретно в папки ios и android и в базе хранить их названия или хранить их в бейс64 в базе?
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
То есть, при такой структуре приложения мне доступны вот эти два варианта?
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
источник

JS

Jura Semenenko in React Native — русскоговорящее сообщество
Дарья Ромашкина
Я правильно понимаю, что в таком случае я должна или положить картинки конкретно в папки ios и android и в базе хранить их названия или хранить их в бейс64 в базе?
Я никогда не работал с fs в RN, но предположу что картинка будет хранится не в оперативной памяти а физически на диске -  значит у нее будет path, а path отлично прокидывается в source={{uri: path}}
источник

JS

Jura Semenenko in React Native — русскоговорящее сообщество
Хотя если в typeorm под капотом sqlite и картинки в base64, то звучит как какаято грязь. Не завидую с этим работать. А откуда картинки возьматся если бекенда нет?
источник

VP

Vitaliy Ponomarev in React Native — русскоговорящее сообщество
Дарья Ромашкина
То есть, при такой структуре приложения мне доступны вот эти два варианта?
один
про base64 забыть и не вспоминать.
разбираться с путями к файлам.

но прежде всего - повторю вопрос - откуда эти данные должны попасть в базу? если бекенда нет - они будут предзагружены при сборке приложения?
они должны будут меняться как-то со стороны приложения или нет?
исходя из этого уже и способ решения выбирать.
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
Они не будут менятся со стороны приложения никак
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
Они будут предзагружены в базу через админку (которой еще тоже нет)
источник

VP

Vitaliy Ponomarev in React Native — русскоговорящее сообщество
Дарья Ромашкина
Они не будут менятся со стороны приложения никак
тогда всё просто, на самом деле. хранить в базе пути или base64 не обязательно, достаточно только какой-то уникальный ключ (название, uid - всё что угодно) и уже в приложении делать реальный мапинг к картинкам в ассетах, как уже предлагали выше.
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
Vitaliy Ponomarev
тогда всё просто, на самом деле. хранить в базе пути или base64 не обязательно, достаточно только какой-то уникальный ключ (название, uid - всё что угодно) и уже в приложении делать реальный мапинг к картинкам в ассетах, как уже предлагали выше.
а в каких именно ассетах дожны находятся картинки? в папке src?
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
просто из-за того, что я не могу сделать вот так {require(`../../img/{id}.jpg`) или {require(region.hero_image)} я не понимаю как их маппить
источник

VP

Vitaliy Ponomarev in React Native — русскоговорящее сообщество
Дарья Ромашкина
просто из-за того, что я не могу сделать вот так {require(`../../img/{id}.jpg`) или {require(region.hero_image)} я не понимаю как их маппить
источник