Size: a a a

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

2020 July 23

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
Вот, это мне делать и нельзя. Я предложила этот вариант, на что мне ответили, что такой хардкод нам нафиг не нужен, и если мне очень хочется, мне нужно писать отдельную функцию, которая будет парсить все картинки и создавать этот объект, а написать руками такой объект - этого не надо
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
Jura Semenenko
А если картинки грузятся через админу в базу, то как они попадут в память телефона? Я не очень понимаю этот момент…
если бы я этот момент понимала(( а главное если бы его понимал еще и тот, кто админку писать будет - было бы легче жить)
источник

VP

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

ДР

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

ДР

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

JS

Jura Semenenko in React Native — русскоговорящее сообщество
Дарья Ромашкина
если бы я этот момент понимала(( а главное если бы его понимал еще и тот, кто админку писать будет - было бы легче жить)
Вот тут и ответ. Пока можешь просто написать функцию которую уже начала писать. В итоге уверен картинки будут прилетать с рельного бекенда по урле или просто хардкод в ассетах.
источник

АС

Алексей Савельев... in React Native — русскоговорящее сообщество
Дарья Ромашкина
Вот, это мне делать и нельзя. Я предложила этот вариант, на что мне ответили, что такой хардкод нам нафиг не нужен, и если мне очень хочется, мне нужно писать отдельную функцию, которая будет парсить все картинки и создавать этот объект, а написать руками такой объект - этого не надо
я бы послал таких dry-щиков :)
источник

ДР

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

АС

Алексей Савельев... in React Native — русскоговорящее сообщество
Дарья Ромашкина
ну, я так понимаю, тут смысл в том, что если вот у меня сейчас 7 регонов, а потом появится новый, то при таком способе, мне нужно его картинку мало того что в ассеты руками добавить, еще и прийти и в объект записать, поэтому такой вариант и не котируют
😱целых 7 строчек! конечно же надо придумать целую систему генерации чтобы 8ю не писать самому
источник

АС

Алексей Савельев... in React Native — русскоговорящее сообщество
!!! забыл
источник

JS

Jura Semenenko in React Native — русскоговорящее сообщество
Дарья Ромашкина
ну, я так понимаю, тут смысл в том, что если вот у меня сейчас 7 регонов, а потом появится новый, то при таком способе, мне нужно его картинку мало того что в ассеты руками добавить, еще и прийти и в объект записать, поэтому такой вариант и не котируют
А откуда тогда должна взятся новая картинка? Только по сети. Урла прилетит. Либо с обновлением апки. Хардкод в ассеты. Третьего не дано.
источник

ДР

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

VP

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

https://github.com/facebook/react-native/issues/18216#issuecomment-412569517

но с оговоркой что это поведение может измениться в любое время (впрочем как и весь RN до первого мажорного релиза)
источник

ДР

Дарья Ромашкина... in React Native — русскоговорящее сообщество
А почему бейс плохой вариант? Сам RN его принимает как вариант
источник

ДР

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

ДР

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

ДР

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

VP

Vitaliy Ponomarev in React Native — русскоговорящее сообщество
Дарья Ромашкина
В resolveAssetSource  нужно передать require(), внутри которого будет путь - который я не могу вставить при условии, что я хочу получать его из базы
у android там не только путь к файлу может быть, но и то что я в комменте на github скинул
источник

АС

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

ДР

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