Tengo una aplicación Flutter, funciona bien en dispositivos móviles, estoy intentando tener la misma aplicación en la web. Estoy usando Moor para sincronizar y almacenar datos localmente en caso de que no haya Internet y cuando vuelve Internet se sincroniza con el servidor. Ahora, cuando intento ejecutar la misma aplicación en la web, Moor se queja
Error: MissingPluginException(No implementation found for method getDatabasesPath on channel com.tekartik.sqflite)
el complemento dice que es compatible con la web, desde aquí. No encuentro mucha información sobre cómo resolver esto. ¿Cómo puedo configurar Moor para que se ejecute en la web sin ese error?
¿Intentaste reiniciar tu aplicación?
– andrej
28 de marzo de 2021 a las 6:23
@Andrej sí, no hice nada
Arriff
28 de marzo de 2021 a las 6:46
¿Lo resolviste?
- Jagadish
25 de mayo de 2021 a las 8:07
------------------------------------
El complemento que estás utilizando está construido sobresqlite, que en sí no es compatible con la web, y en la parte inferior de la página del complemento Moor también se menciona que el soporte web ahora es experimental.
El complemento Sqlite aún no es compatible con la web, pero sí es compatible con Android, iOS y Macos. Sugeriría a cualquiera que enfrente este problema que use otras bases de datos o bases de datos basadas en la nube en lugar de sqlite si está usando flutter web. Espero que el complemento también sea compatible con la web.
Actualización:
Puedes probar este ejemplo para usar sqlite en la web, podría funcionar.
3
De este ejemplo sqlitFunciona bien desde la web, solo tienes que ser creativo, funcionó para mí usando ese ejemplo, por lo que tu respuesta no es tan correcta
Arriff
28 de mayo de 2021 a las 15:04
¡Actualizada la respuesta!
- Jagadish
29 de mayo de 2021 a las 6:01
Tienes que usar bloc para una gran cantidad de códigoque funcione
Arriff
2 de junio de 2021 a las 10:30
------------------------------------
Obtuve el mismo error cuando ejecuté la aplicación web por primera vez.
Si sigue una arquitectura limpia, podrá proporcionar fácilmente la "base de datos" instancia.
Esto es lo que hice:
Crear una interfaz de almacén de datos local
Compruebe si la web utiliza kIsWeb
Si kIsWeb es cierto, devuelvo un caché en la memoria; de lo contrario, solo devuelvo la base de datos de la aplicación móvil que ya implementó para sus aplicaciones de Android e iOS.
respondido
20 de octubre de 2021 a las 19:14
usuario3193413
usuario3193413
585
7
7 insignias de plata
10
10 insignias de bronce