Buscar..
Observaciones
Más investigación de Appcache
http://www.html5rocks.com/en/tutorials/indexeddb/todo/
http://grinninggecko.com/2011/04/22/increasing-chromes-offline-application-cache-storage-limit/
http://www.html5rocks.com/en/tutorials/offline/quota-research/
https://developers.google.com/chrome/apps/docs/developers_guide?csw=1#installing
https://developers.google.com/chrome/apps/docs/developers_guide?csw=1#manifest
Meteor.status ()
Lo primero que debe hacer al desconectar su aplicación Meteor es crear una indicación visual de si la aplicación cliente local está conectada al servidor o no. Hay muchas maneras de hacer esto, pero la forma más sencilla es probablemente hacer algo como esto:
Template.registerHelper('getOnlineStatus', function(){ return Meteor.status().status; }); Template.registerHelper('getOnlineColor', function(){ if(Meteor.status().status === "connected"){ return "green"; }else{ return "orange"; } });
<div id="onlineStatus" class="{{getOnlineColor}}"> {{getOnlineStatus}} </div>
.green{ color: green; } .orange{ color: orange; }
Habilitar appcache
Uno de los pasos más fáciles es agregar el appcache. Appcache permitirá que el contenido de su aplicación se cargue incluso cuando no haya acceso a Internet. No podrá obtener ningún dato de sus servidores mongo, pero el contenido estático y los activos estarán disponibles sin conexión.
meteor add appcache
Habilitar GroundDB
Finalmente, queremos que algunos de nuestros datos dinámicos se almacenen fuera de línea.
meteor add ground:db
Lists = new Meteor.Collection("lists");
GroundDB(Lists);
Todos = new Meteor.Collection("todos")
GroundDB(Todos);
Cosas para tener cuidado
- Appcache causará cierta confusión en su flujo de trabajo de desarrollo, ya que oculta las funciones de actualización automática de Meteor. Cuando apague el componente del servidor de su aplicación, la parte del cliente en su navegador continuará funcionando. ¡Ésto es una cosa buena! Sin embargo, no obtiene la respuesta inmediata de que su aplicación ha sido desactivada o de que ha habido actualizaciones.
- Intenta usar el Modo incógnito de Chrome al desarrollar tu aplicación, ya que no usa appcache.
- GroundDB no funciona particularmente bien con IronRouter.