簡體   English   中英

用不同的數據編譯Jade部分

[英]Compiling Jade partial with different data

我正在使用gulp編譯靜態網站的Jade。 有一個gulp任務可以將所有的jade文件編譯成HTML文件。

我正在創建一個10步驟的過程,每個HTML頁面帶有“上一個”和“下一個”按鈕

我想創建如下的局部

a(href="#{prev}") Back
a(href="#{next}") Continue

對於每一頁,上一個和下一個值都會更改。 有沒有一種方法可以使用自定義的prev和next值從每個頁面的翡翠中調用局部?

我假設,就像您如何在把手模板中綁定數據並進行編譯一樣,我可以為每個頁面使用不同的locals對象,並使用不同的數據呈現相同的部分。

我是在處理這個錯誤,還是玉器有可能? 我看到的所有答案都與在Jade中使用express有關。 我只是在創建一個靜態網站,而實際上只是HTML。

如果您通過include將更大的Jade模板包含在局部中,那么只需更改要渲染的更大模板的局部變量即可。

gulp.src('./templates/template-that-includes-a-partial.jade')
  .pipe(gulpJade({
    locals: {
      prev: 'some value',
      next: 'some other value'
    }
  })
  .dest('./build/templates/');

這樣的事情應該起作用。 局部視圖應該具有與包含局部視圖的父視圖相同的本地權限。

我發現您可以在父模板中使用-定義Jade變量,並使用此數據調用局部變量

- var prev = "a.html"
- var next = "b.html"

include partials/_var

然后在部分中使用插值以使用相應的值

a(href="#{prev}") Prev
a(href="#{next}") Next

這樣,我可以在不同的父模板中調用同一部分,但為每個頁面傳遞不同的值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM