2012-01-26 111 views
0

在我的./inc/footer.jade我有一堆腳本標記。我只想在一個特定路線上提供其他腳本如何做到這一點?玉:服務路線特定的資源

在控制器我可以這樣做:

res.render('someTemplate', { 
    extraScript: true 
}); 

和footer.jade

- if (extraScript) 
    <script src="/script.js"></script> 

但我必須包括這個 'extraScript' 在每一個路徑變量(設置爲false) 。

回答

1

您可以使用typeof來檢查變量是否存在。

- if (typeof extraScript !== 'undefined') 
    <script src="/script.js"></script> 

這樣,對於不需要額外的腳本的所有路線,你根本就沒有在extraScript傳球,然後在模板,typeof extraScript !== undefined將進行評估,以false

+0

這是我正在尋找的解決方案。謝謝! – Pono

0

該extraScript解決方案的工作原理,但我相信一個更好的解決方案是使用模板繼承(塊和擴展關鍵字)。通過這種方式,您不必爲模板添加邏輯和局部變量,並且仍然可以在玉標記中保持乾燥。