flutter #dart
#flutter #dart
Вопрос:
Как сохранить данные (абзацы) в приложении текстового редактора в flutter. Текстовый редактор был создан с помощью пакета Quill. нужно ли мне извлекать внешние API-интерфейсы или любой другой пакет или хранилище, которые уже доступны в пакете Quill в flutter, а также если этот api или пакет хранения предоставляют облачное хранилище или локальное хранилище для хранения телефона пользователя
Ответ №1:
Если вы хотите, чтобы данные хранились в Интернете, вы можете использовать firebase или любую онлайн-базу данных, такую как MySQL, MongoDB и многие другие варианты
однако, если вы хотите хранить их локально на телефоне, без использования Интернета, и чтобы эти данные были постоянными, «убейте приложение, затем запустите повторно и найдите эти данные в новом сеансе», тогда вам нужно использовать локальную базу данных, например, пакеты sqfLite или Sembast Flutter,,
Sembast — это супер быстрая и простая локальная база данных NoSQL. в то время как sqfLite — это база данных SQL
и если вам просто нужно сохранить данные во время сеанса, и для удаления при завершении работы приложения,, вы можете сохранить данные в глобальной переменной, используя bloc или provider в классе, который расширяет ChangeNotifier
и если вы просто хотите сохранить данные на текущем активном экране и удалить данные при закрытии экрана, просто установите локальную переменную с этими данными в классе состояния StatefulWidget..
Комментарии:
1. Может кто-нибудь, пожалуйста, указать пример использования firebase?
Ответ №2:
Преобразуйте содержимое в строку json
var json = jsonEncode(_controller.document.toDelta().toJson());
Используйте пакет с именем общие настройки
Сохраните строку json, используя общие настройки.
Для извлечения данных используйте
var myJSON = jsonDecode(incomingJSONText);
_controller = QuillController(
document: Document.fromJson(myJSON),
selection: TextSelection.collapsed(offset: 0));
Проверьте https://github.com/singerdmx/flutter-quill для получения дополнительной информации