渐进式Web应用程序和CMS驱动的网站

时间:2016-05-21 17:36:05

标签: offline-caching offlineapps progressive-enhancement progressive-web-apps

我对来自Addy OsmaniJake Archibald等开发者的谈话的离线优先,渐进式网络应用程序很感兴趣。但是,当我看到它们时,似乎总是在web 应用程序的环境中,有人会使用SPA来构建聊天应用程序,照片应用程序,并与来自API端点的数据进行交互。

我通常与使用CMS构建10k +页面的客户合作,这些页面具有各种长度和组合的各种不同内容:WYSIWYG内容,横幅,表格等。

离线优先,渐进式Web应用程序是否可用于CMS驱动的工作?如果是这样,保持渐进增强的最佳做法是什么?

1 个答案:

答案 0 :(得分:2)

简而言之,Progressive Web Apps是一个具有良好的用户体验,响应式用户界面的网站。并且Service Worker必须manifest.json

  

离线优先,渐进式Web应用程序是否可用于CMS驱动的工作?如果是这样,保持渐进增强的最佳做法是什么?

因此,如果您的目标是CMS,那么您的问题很可能会出现:

1。是否可以将Service Worker集成到CMS驱动的工作中?

答案是肯定的,无论是前端还是后端离线技术,服务工作者都不关心在哪一方运行,而只关心处理"端点"来自浏览器的外部请求。

例如:

  • 您希望在离线时使/css/style.css文件可加载。
  • 您需要做的就是告诉服务工作者缓存此文件,并在网络无法使用的情况下使用它。

2。保持渐进增强的最佳实践是什么?

  • 这取决于您使用的CMS(流行的可能已经有SW的插件)
  • 你喜欢什么?大多数CMS用户更喜欢通过插件或一些自动化工具处理...

...但在我看来,服务工作者的插件总是受限于用例。如果您想使用其他功能,例如"推送","通知" ......等等,它可能会使工作变得复杂化。

=>所以对我来说,最佳实践是"不使用CMS插件" (手工编码)

P.S。

如果您决定选择我建议的内容,那么GoogleChrome团队会有一个小型的js库,名为" sw-toolbox"。简而言之,一个简单的网站将使用少于10行代码和此工具来启用离线优先功能。 (请注意,我不计算后台同步,推送,动态数据缓存......或任何高级功能)