问题 使用Jekyll生成app.cache


我们有一个使用Jekyll和Jekyll-Assets(使用链轮)在本地构建的站点。

我们希望能够生成一个缓存清单,其中包含进入生成站点的所有文件。我们希望将其生成为构建过程的一部分,以便整个站点可以脱机使用。 (这是一个非常小的网站,但我们反对手工工作!)

在构建期间,图像和css在文件名后附加了一个哈希,因此我们无法预测结果。

我们尝试过使用 {% asset_path logo.png %} 等方法,但它没有得到处理。即它将Liquid标签保留在最终文件中。 ERB  工作(<%= 2+3 %> 给出5)但我们看不到访问结果文件的方法。

我们正在考虑另外一个任务运行员来包装整个事情,但这感觉有点矫枉过正。


10030
2018-05-05 08:30


起源

你能用不起作用的液体张贴你页面的内容吗? - bwest


答案:


jekyll-perf 建立一个 manifest.appcache 文件。该项目看起来好像可能处于休眠状态,但他们按如下方式进行。希望这是一个有用的起点。您可能需要自然地调整资产路径等内容。

(我不确定是否 for 这里的东西会处理你附加的哈希问题。如果这正是您已经尝试过的并且它对您没有用,请道歉。)

---
---
CACHE MANIFEST

# rev {{ site.buildtime }}

CACHE:
{% asset_path all.css %}
{% for page in site.pages %}{% if page.url != '/manifest.appcache' %}{{ page.url }}{% endif %}
{% endfor %}
{% for item in site.images %}{{ item.url }}
{% endfor %}
{% for item in site.scripts %}{{ item.url }}
{% endfor %}

NETWORK:
*
http://*
https://*

7
2018-05-13 05:43





别忘了:

  • 清单中空的前端物质

    ---
    # empty front matter
    ---
    [...]
    
  • 如果输出它们,则循环遍历集合。


2
2018-05-19 21:19