我正在构建一个在 jekyll 和 github 页面上运行的博客。 我试图以这种方式显示每个帖子的阅读时间:(假设平均阅读速度为每分钟 180 字)
{% for post in paginator.posts %}
{% capture readtime %}{{ post.content | number_of_words | plus:91 | divided_by:180 }}{% endcapture %}
...
{{ readtime }} min. read
{% endfor %}
当我在本地测试这段代码时,一切都很好。对于 200 字的帖子: 291/180 = 1.61(6) jekyll 生成结果:
1 min. read
但是当我将这段代码推送到 github 页面时,发生了一些奇怪的事情。作为除法的结果,我看到一些分数会给我相同的结果。 于是github上的jekyll生成结果:
97/60 min. read
事实上: 97/60 = 1.61(6)
我应该怎么做才能在 github 上获得与本地相同的结果?
最佳答案
这似乎是一个错误。
这行得通
{% assign number = 200 %}
{{ number | divided_by: 10 }}
输出:20
这行不通
{% assign text = "a text with words" %}
{% assign division = text | number_of_words | divided_by: 3 %}
{{ division }}
输出:4/3
我已经在 Jekyll 中填补了错误和 Liquid存储库,我会在获得有关该决议的信息后立即在此处发布。
考虑到这个错误在 github 页面上重现,并且知道 github 社区有多严重,我敢打赌我们很快就会解决这个错误。
编辑:
这是一个 Jekyll 错误,现在已在 master 分支中修复。我们现在必须等待这个提交在下一个 Jekyll 版本中实现,我想是 v2.1,然后冒泡到 Github 页面。
敬请期待。
关于github 页面上的 Jekyll 将除法结果显示为分数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25147857/