2015-02-04 45 views
0

我的if else語句使用「^」作爲「false」或「not」用於Handlebars 1.3.0和Mustache.php。當我在Handlebars 2.0.0中嘗試^「如果不是」時,它總是忽視該塊,不管是真是假?if/else Mustache.php和Handlebars 2.0.0兼容

{{#repo}} 
 
    <b>{{name}}</b> 
 
{{/repo}} 
 
{{^repo}} 
 
    No repos :({ 
 
{{/repo}}

+0

我錯了。這個問題是由於用grunt-handlebars-compiler將編譯的hbs文件替換爲grunt-contrib-handlebars引起的,並且需要這裏解釋的processName選項引起的問題 http://stackoverflow.com/questions/27564868/handlebars-precompile-type-error – MrRay

回答

0

那麼那些沒有simples if/else陳述,這些^{{}}內被稱爲inverted sections

倒置部分與插入符號(帽子)開始和結束以斜線。 即{{^ person}}開始一個「人物」倒立部分,而 {{/ person}}結束它。

雖然各部分可用於根據 一次或多次呈現文本,但鍵的值,反轉部分可能會根據鍵的相反值 呈現一次文本。也就是說,如果 鍵不存在,爲假或爲空列表,它們將被呈現。

並沒有兼容性問題使用mustachehandlebars 2.0,請確保哈希看起來像這樣。你

{ 
    "repo": [] //or :false //or well it dosnt exists 
} 

也可能想看看進入this proposal to change some features of mustache