2013-07-16 123 views
1

編譯這種模板與dustc與線編譯灰塵模板打破

$ cat <<EOF | ./node_modules/.bin/dustc - 
<p>Hi there!</p> 
<p>I'm a {! dust !} template.</p> 
EOF 

輸出:

(function(){dust.register("-",body_0);function body_0(chk,ctx){return chk.write("<p>Hi there!</p><p>I'm a template.</p>");}return body_0;})(); 

而不\n之間,例如:"<p>Hi there!</p>\n<p>I'm a template.</p>"

是否有任何改變這種方式? 謝謝

回答

3

您可以使用{~n}在您的Dust模板中創建換行符。這在<pre>標籤中特別有用。

+0

這是一個很好的提示!但是有沒有任何選項可以自動爲每一行結束? – abernier

+1

不幸的是,並不如此。灰塵在編譯時剝去換行符。我相信有人在談論改變這種行爲,所以你可能會在不久的將來看到這一點。 – smfoote

1

您可以

dust.optimizers.format = function(ctx, node) { return node }; 

預編譯禁止空白壓縮與gulp-dust,有一個preserveWhitespace選項,做到了這一點:

var compile=require('gulp-dust'); 

// ... 
gulp.src('templates/**/*.dust') 
    .pipe(compile({ preserveWhitespace: true })) 
    // ...