2016-04-16 3 views
0

私の問題は、HTMLのいくつかのタグが同じ行に終わるということです。 例の場合、enter image description hereはこのようになりますenter image description here
私はそれをそういうものに見せたいと思います。それは可能ですか? enter image description here
はここで、デフォルトでは、独自の行に<span><i>などのインライン要素を配置しないだろう、私のgulpfileジェイドを1行でコンパイルする

gulp.task('templates', function() { 
    var YOUR_LOCALS = {}; 

    gulp.src('./*.jade') 
    .pipe(jade({ 
     pretty: true, 
     locals: YOUR_LOCALS 
    })) 
    .pipe(gulp.dest('./')) 
}); 

答えて

1

ほとんどのHTML prettifiersです。しかし、良いものはデフォルトの動作を上書きすることができます。 Jadeの組み込みのprettyオプションでこれを行う方法がないようです。

つまり、gulp-prettifyのような外部HTMLプリティファイヤーを使用する必要があります。これはjs-beautifyに基づいており、a whole plethora of optionsがあり、HTMLのフォーマット方法に影響を与えることができます。

これらのうち、unformattedオプションは、どの要素が独自の行にインデントされないかを決定します。ここでもデフォルトでは、すべてのインライン要素が含まれています。代わりに空のリストを渡すと、その動作は無効になります。

var prettify = require('gulp-prettify'); 

gulp.task('templates', function() { 
    var YOUR_LOCALS = {}; 

    gulp.src('./*.jade') 
    .pipe(jade({ 
     locals: YOUR_LOCALS 
    })) 
    .pipe(prettify({ 
     unformatted: [] 
    })) 
    .pipe(gulp.dest('./')); 
}); 
+0

ありがとうございました! – Allan