【问题标题】:"Unexpected identifier" when adding extends/block to wintersmith-jade content file向 Wintersmith-jade 内容文件添加扩展/块时出现“意外标识符”
【发布时间】:2014-11-22 08:43:52
【问题描述】:

我正在使用 Wintersmith 以及 wintersmith-styluswintersmith-jade 插件制作一个静态网站。

我想在帮助页面中添加一个特定的 CSS 文件。帮助页面基于“布局”模板。当我尝试使用块将样式表插入到 html 头部时,我收到以下错误:

Line ##: Unexpected identifier

layout.jade

doctype html
html
    head
        block head
        link(rel="stylesheet" href="/styles/layout.css")
    body

...

help.jade

---
template: layout.jade
---

//- Error inducing code
extends ./layout.jade

block head
    link(rel="stylesheet" type="text/css" href="../styles/help.css")
//- end of error inducing code

...

即使我将extendsblock head 行移到包含template: layout.jade 的元数据块的顶部,我仍然会收到相同的错误。在我的情况下,删除 extends ./layout.jade 会导致错误线位置从 40 移动到 5。

我的猜测是这个错误是由 wintersmith-jade 插件引起的,但即使是这样,我也不知道如何修复它。

【问题讨论】:

    标签: node.js pug stylus wintersmith


    【解决方案1】:

    因为我想同时使用 Stylus 和 Jade(内容和模板都使用 Jade),所以我最终转到了Harp。 Harp 不仅“内置”了 Stylus 和 Jade,而且比 Wintersmith 稍微简单一些。

    这是一个很好的解决方法,但我会说它实际上同时是一次升级。

    【讨论】:

      【解决方案2】:

      我没有使用 Wintersmith-jade,但看起来该插件不应该影响 /templates 中的常规模板(我认为您指的是)。

      查看templates/article.jade,您应该只使用extends layout 而不是extends ./layout.jade

      默认模板也没有元数据块,但对于您正在使用的插件来说,这可能是必需的。

      【讨论】:

      • 抱歉,我应该指定layout.jade 确实位于/templates,而help.jadecontent 的一部分,使用wintersmith-jade 成为可能。
      • 这里是两个文件的位置: layout.jade: templates/layout.jade help.jade: contents/help/index.jade 我试过你的建议,但不幸的是没有解决它 - 不是甚至错误行也发生了变化。我刚刚注意到,如果我删除元数据块,错误仍然完全一样——这很奇怪。
      猜你喜欢
      • 2018-06-10
      • 2012-06-19
      • 2020-05-15
      • 2021-07-23
      • 2016-04-23
      • 2017-09-03
      • 1970-01-01
      • 2020-05-05
      • 2021-06-01
      相关资源
      最近更新 更多