我们已经开始在AngularDart 2上构建一个简单的Web应用程序。
即使客户端失去了互联网连接,在客户端上运行它的最佳方法是什么?现在,我正在使用Lawndart库来使用本地存储来保存从REST-Api接收到的一些数据,并且工作正常。但是我还没有弄清楚如何告诉客户端浏览器缓存所有源,并在没有互联网连接时使用它们。 (现在,我只是使用我的Redstone-Dart Server(运行REST服务的服务器)提供源)
我偶然发现了Angular Mobile Toolkit(https://mobile.angular.io/guides/),但是它仅用于TypeScript,或者是否可以在Dart中使用它?
同样在项目的后期,可能有必要将推送通知发送给客户端... Dart和Angular 2是否可以实现?
最佳答案
关于以下几点:
cache all sources and use them when having no internet connection
尽管已弃用并且信誉不好,但我仍然亲自使用AppCache(https://developer.mozilla.org/en-US/docs/Web/HTML/Using_the_application_cache)。我了解该解决方案看起来如此,2005年人们谈论渐进式应用程序和服务 worker 时。这是目前唯一可用的跨浏览器解决方案。
它很容易设置(只需提供manifest.appcache)。对于 Angular 应用程序,它主要包含index.html,main.dart.js和外部依赖项。
对我来说,它可以在Safari,Chrome和Firefox(无法识别IE / Edge)上运行。由于iOS是我的需要,因此我找不到其他替代方法(服务 worker )。 Chrome浏览器已开始向非https网站发送警告,但到目前为止效果很好。
真正的推送通知在Web环境中更加复杂。我个人使用Firebase实时数据库“推送”更新
关于angular - 如何使用AngularDart构建脱机支持的Web应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40780935/