Anonymous
https://github.com/redux-offline/redux-offline
Ну это с сервером опять же? Это же просто стор разве нет?
Alexandr
FlatList
с его помощью реализовать бесконечный скролл ?)
Kirill
с его помощью реализовать бесконечный скролл ?)
https://scotch.io/tutorials/implementing-an-infinite-scroll-list-in-react-native
Khorark
Когда доходишь до 0.8 списка отправляешь запрос на получение данных
Khorark
Ну это с сервером опять же? Это же просто стор разве нет?
Читайте. Redux-offline это клиенткая библиотека
Anonymous
Читайте. Redux-offline это клиенткая библиотека
Так всеравно же там данные через при загружаются
Anonymous
Есть приложения которые скачиваешь и там уже без подключений имеются данные. Мне не понятно как эти данные там обновляют в новых версиях приложения
Anonymous
В JSON. С каждой новой версией можно новый такой файл отправлять
А как узнать что запись изменилась? Хеш делается?
Anonymous
Аа или новый json с изменениями каждый раз делать?
Anonymous
Тогда как делать этот json вопрос? Есть инструменты какие?
Anonymous
Я так и планировал, но как управлять этими данными
Khorark
Я так и планировал, но как управлять этими данными
Эти данные ведь статичны, зачем ими управлять. Приведи пример кейса
Anonymous
Эти данные ведь статичны, зачем ими управлять. Приведи пример кейса
Я подумал, что json файлов будет много, как миграции типа. Ну как пример приложение с рецептами. В новой версии к примеру надо добавить категории, какие то удалить, изменить какие то рецепты
Anonymous
Плюс как собрать такой json, со всеми связями и т.д. тоже непонятный момент
Anonymous
Это же не тупо массив какой то
Khorark
Да
Тогда вам вот это нужно https://github.com/andpor/react-native-sqlite-storage
Anonymous
Тогда вам вот это нужно https://github.com/andpor/react-native-sqlite-storage
Интересно.. то есть получается бд с рецептами и чисто пользовательская бд?
Khorark
1 БД, несколько таблиц
Anonymous
Зачем делать разные БД ?
Ну в доке так написано
Anonymous
При импорте же по идее данные затрутся?
Khorark
При импорте же по идее данные затрутся?
Я с ней не работал, но для локального хранения данных её используют
Anonymous
Ок спасибо потестю ) интересно просто что будет если пользователь свой рецепт добавит. Как это решается..
Anonymous
Я думаю как с обычной БД. Insert
Кстати а как обычно делают? Сначала оффлайн версию или онлайн?
Anonymous
В идеале хочу онлайн также сделать с сервером и не знаю с чего лучше начать
Khorark
Кстати а как обычно делают? Сначала оффлайн версию или онлайн?
Обычно всегда делают онлайн, чтобы клиентам оперативно доставлять контент.
Serge
Интересно.. то есть получается бд с рецептами и чисто пользовательская бд?
А если вам не страшно стрингифаить ваши жсоны, то можете попробовать key-value bd AsyncStorage. Этот полноценный скулайт выглядит как оверкилл. Чего только стоит его подключение к проекту в тысяче мест. И работа на коллбэках может быстро привести к коллбэчному аду.
Serge
AsyncStorage, конечно, не сработает, если требуется полноценный поиск по полям и при этом данных настолько много, что их нежелательно все сразу держать в js-памяти.
Anonymous
Ну я думаю есть какие то orm же нормальные?
Anonymous
И необязательно же колбэки юзать
Eugene
Вряд ли 🤔 Да и для простых операций можно своих функций написать
Anonymous
Приглядитесь еще к realm.
Про него слышал только я так понял это типа временного хранилища, кэша чтоли
Serge
И необязательно же колбэки юзать
А как? прогонять всё через promisify?
Serge
await
Оно не будет эвейтиться, потому что работает на коллбэках же.
Anonymous
Оно не будет эвейтиться, потому что работает на коллбэках же.
Ну наверняка решение с промисаси должно быть
Anonymous
А в чем преимущество realm никак не пойму? В чем главное назначение?
Serge
Ну наверняка решение с промисаси должно быть
Типа оборачивании всего в promisify. Хотя как знать, может кто-то уже и написал обертку над этой либой.
Alexsandr
Anonymous
Это бд. БД и есть БД.
Ну sqlite тоже бд.. я так понимаю он с сервером все синхронизирует
Eugene
🤔в 2к19 году, не легче ли взять уж cloud какой-нибудь хотя бы или сервер простенький написать
Alexsandr
realm в оффлайне работает
Alexsandr
+ есть подписки на изменения
Serge
У реалма язык запросов проще.
Serge
Ближе к JS.
Anonymous
То есть запись меняется и ты вешаешь колбэк?
Alexsandr
Какой смысл в этом?
ну к примеру у меня весь интерфейс на этом построен
Anonymous
ага
Ну так можно же сделать евент при изменении записи
Alexsandr
То есть запись меняется и ты вешаешь колбэк?
я редукс так выпилил из проекта
Eugene
🌚показать лоадер - включите интернет, кек ладно-ладно
Serge
А еще объекты живые. Изменил в нем значение свойства, а оно сразу в бд записалось.
Serge
И везде, где используется этот объект, сразу актуальные изменения.
Eugene
Глянул язык запросов в realm. Выглядет круто
Alexsandr
Ну так можно же сделать евент при изменении записи
таки да, но я могу прям в компоненте подписываться, а запрашивать данные в другом месте
Alexsandr
как в редаксе, только без редакса)
Serge
Только там подписка на изменения в массиве результатов, а не на изменения в конкретном элементе.
Serge
Но никто не мешает в качестве массива результатов сделать массив из одного интересующего элемента.
Serge
У меня с Реалмом всего несколько проблем.
Serge
Его низкая скорость работы с хромовым дебаггером (немного можно оптимизировать, терпимо), его неправильная работа в некоторых очень специфичных условиях при отладке (в RPC с листенерами нарушается порядок запросов-ответов, при этом в проде все норм), его хз как настроить в stetho, и еще что-то...
Serge
А, еще лично в моем случае некоторые проблемы из-за того, что коллбэки на изменение коллекций срабатывают с некоторой задержкой.