我已經開始嘗試與中間人和紅寶石。在中間人,如何設置變量?
樣品佈局有這個字符串:
<body class="<%= page_classes %>
在任何特定的網頁,我該如何設置「PAGE_CLASS」?
我已經開始嘗試與中間人和紅寶石。在中間人,如何設置變量?
樣品佈局有這個字符串:
<body class="<%= page_classes %>
在任何特定的網頁,我該如何設置「PAGE_CLASS」?
可以在config.rb定義變量以@符號,如:
@var = ["something", "here", ...]
,並使其加入到模板中可見,在config.rb:
set :var, @var
如果它是一個方法,你應該在config.rb的幫助部分下定義它。
<%= page_classes %>
是Middleman的默認視圖助手之一,並根據當前頁面的文件名和目錄返回一個字符串。 G。
/index.html
它返回index
/folder1/index.html
它返回folder1 folder1_index
/folder1/folder2/page.html
它返回folder1 folder1_folder2 folder1_folder2_page
等(上述實例從Middleman's Relish documentation for 'page_classes'改編)。
使用您發佈的樣本佈局中的代碼段,您可以設置您的頁面樣式或highlight the corresponding navigation item via CSS。
編輯:甚至更多的選項添加到由馬雷克提供的答案,你可以使用
這兩者都是描述在Middleman的網站/文檔上。
請注意,通過YAML Frontmatter設置的變量也可在您的layouts中找到。
可以在config.rb
set :var, ["something", "here"]
在模板中定義的變量,你將不得不使用
config[:var]
我不知道具體中間人,但我要冒險受過教育猜測'page_classes'是不是一個變量,但實際上是一種方法。 – d11wtq