首页 文章

在移动网站上 生产环境 服务工作者

提问于
浏览
0

我是服务工作者的新手 . 我想在我的网站中整合服务工作者 . 我的动机是改善我的网站的性能,而不是使网站脱机 . 它是一个房地产网站 .

所以我到目前为止所做的是创建我的网站的模块化模板并将它们存储在缓存中 . 例如模板1

<div>
     <p>#data</p>
<div>

每当在我的页面上进行提取时,我首先通过ajax调用api获取数据并通过实际的api响应替换缓存响应中的#data变量,然后我将新的响应返回给浏览器 .

Question 1:- 所以我想知道的是正确的方法 . 用于html模板缓存?

在上面的方法中,我在html中遇到了循环和条件语句等问题 . Question 2:- 有什么方法可以用循环缓存模板并在运行时更改它们?

Question 3:- 如果我最初向用户显示缓存的app-shell,那么这将影响我的网站的SEO排名吗?

Question 4:- 我必须编写现有代码的新模板,这意味着我必须维护两个代码,一个用于服务工作者,另一个代码用于不支持服务工作者的普通浏览器 . 这个解决方案是什么?

问候

1 回答

  • 0

    这是很多问题,我不认为服务工作者一定是你最好的选择 .

    Question 1: 我个人建议为你的HTML模板使用一个框架,如KnockoutJS,Angular,Polymer ...等 . 这些通常内置模板缓存 .

    Question 2: 而不是你正在使用的方法,你在更换变量之前,大多数框架会使用某种形式的数据绑定来处理浏览器中的迭代和条件 .

    Question 3: 缓存app-shell对SEO没有影响,谷歌已经解析了JavaScript一段时间;但我个人建议网站的内容加载没有JavaScript,然后JavaScript只用于增强体验 . 无论是否使用app-shell模型,这都是相同的 .

    Question 4: 我不明白你当前的设置,这不是一个普通的场景,所以你可能有些不对劲 .

    服务工作者和缓存API通常用于缓存静态资产,通常是字体,CSS,JavaScript和HTML模板,并且应该可以提高性能,因为HTTP请求较少;但是还有其他方法可以提高性能,无需使用服务工作人员即可解决所有问题 .

相关问题