2015-06-17 70 views
0

比較我有這個條件語句在我.jade模板:玉:條件語句不能正常工作:不是在所有

- var merchant = "{{merchant}}" 
if merchant == "The Restaurant" 
    h1 It worked! 
else 
    h1 "{{merchant}}" 

當我打印「{{商家}}」在我else語句,說到正如「餐廳」一樣。因此,條件應該評估爲真。

當我重新工作,我的代碼,所以:

- var merchant = "The Restaurant" 
if merchant == "The Restaurant" 
    h1 It worked! 
else 
    h1 "{{merchant}}" 

它的實際工作。我不明白爲什麼if條件仍然評估爲false。有什麼建議麼?謝謝!

+0

嘗試刪除第一行'成功合作 - VAR商人=「 {{merchant}}「' –

+0

好的,刪除它。然後,我用{{merchant}}替換了if語句中的商家,但現在它給了我一個語法錯誤。建議? –

+0

如果你只是刪除第一行會發生什麼,沒有別的? –

回答

0

如果您使用Express.js並通過res.render方法提供merchant變量,則不需要再次聲明該變量。它將在渲染環境中可用。

Jade也使用#{}進行字符串插值,而不是{{}},像Handlebars。所以,你的代碼更改爲以下內容,它會正常工作

if merchant == "The Restaurant" 
    h1 It worked! 
else 
    h1 #{merchant} 

我能得到這個具有以下快遞航線

router.get('/', function(req, res, next) { 
    res.render('index', { merchant: 'The Restaurant' }); 
});