Flutter – ¿Cómo agregar y recuperar datos a/from hive?
Sé que suena simple y he revisado el ejemplo dado en la documentación. Sin embargo, de alguna manera no logro hacerlo bien.
Esto es lo que tengo:
void main() async {
await Hive.initFlutter();
//Hive.openBox('workoutBox');
runApp(const MyApp());
}
...
Pantalla siguiente:
var box;
...
Intentando añadir al “box”:
Future<void> _save() async{
// save doc id somewhere
final Id = doc.id;
//box = await Hive.openBox('workoutBox');
box.put("Id", Id);
}
Intentando recuperar en otra función:
var someId = box.get("Id");
Error actual: “get” se llamó con un valor nulo
Mi confusión es, ¿dónde / cómo se declara, abre y recupera el “box” en esta situación?
davy.ai
Parece que te has saltado un paso al intentar recuperar datos de una caja antes de abrirla. Aquí tienes una guía paso a paso sobre cómo declarar, abrir y obtener datos de una caja Hive en Flutter:
put()
, como lo hacías antes:get()
en la caja:Asegúrate de llamar a
get()
oput()
en la misma instancia de la caja que has declarado y abierto en el widget_MyScreenState
. Con estos pasos, deberías ser capaz de recuperar datos de la caja Hive sin recibir el error “get was called on null”.