169 похожих чатов

Подскажите нубасу, для условного интернет-магазина функциональность Положить товар в корзину

/ Добавить в избранное — через что лучше реализовать хранение этих данных, чтобы закрытие приложения не сбрасывало?

Я использую firebase и firestore для юзеров и карточек товаров, лучше так же через firestore присоединять товары к юзерам или есть решение без внешних апи?

7 ответов

5 просмотров

храните там, где эти данные реально будут нужны. если, к примеру, есть web-версия, в которой пользователь может продолжить покупку, начатую в мобиле (омниканальная корзина) - держите в общей базе, если нет такой потребности - можно и в локальном хранилище (глобальный стейт с персистентным хранилищем / asyncstorage и т.п.) ну и "присоединять товары к юзерам" - не самая правильная идея, как минимум еще нескольких сущностей не хватает для нормального ecommerce (как минимум заказ, инвойс, платёж)

Олег- Автор вопроса
Vitaliy Ponomarev
храните там, где эти данные реально будут нужны. ...

Спасибо большое! а можно вкратце в моем контексте, для чего нужен AsyncStorage - он как бы сохраняет props/state и после закрытия приложения? а если выйти из профиля, закрыть приложение и спустя время повторно авторизоваться?

Олег
Спасибо большое! а можно вкратце в моем контексте,...

он сохраняет то что вы явно туда запишете. и вернёт то что явно оттуда запросите (если до этого записали) https://react-native-async-storage.github.io/async-storage/docs/usage здесь нет магии (ну разве что автолинкинг модулей в 0.60+ считать чем-то подобным...)

Ну я бы на беке хранил рядом с юзером

Если нужна синхронизация с вебом, например, то кеш или бд, а так я бьі сохранял просто в приложении

Олег- Автор вопроса
Pav Huk
Если нужна синхронизация с вебом, например, то кеш...

сохранять в кеш - это какое решение, библиотека?

Похожие вопросы

Обсуждают сегодня

Такой вопросец - есть функция function MySuperDuperConcat(const a: array of AnsiString): AnsiString; Как мне в её теле сделать вот так? Result:=Concat(a); А не грустный вариан...
notme
15
type TObj = object procedure Init; virtual; end; TObj1 = object(TObj) procedure Init; override; end; procedure TObj1.Init; begin inherited; end; procedur...
Alexander 👋
29
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
48
А чем вам питонисты не угодили?😂
.
79
Можно ли загрузить скрипт py в бота чтобы он работал по нему? как это сделать?
huskadam #RCC Фанат? @hitlerpvp
13
Всем здравствуйте! Я хотел узнать сколько стоит средняя месячная зарплата у Electron js разработчиков? Мне очень это важно и нужно, плиз помогите узнать эту инфу! Для Джунио...
U.K.
10
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
77
А дин типизация это хорошо или плохо?
Alexey
12
Язык Си можно выучить за день? По книжке ANSI C на 230 страниц
Vincent Vegan
29
Исходники плюс документация? Вы гоните)) демок хватит всем
zamtmn
11
Карта сайта