【发布时间】:2015-01-19 06:16:34
【问题描述】:
我正在自学 Gulp,但在使用 gulp-file-include 和 Jade 时遇到了问题——这依赖于正确的标记缩进。
gulp-file-include 成功包含了部分(用于页脚和导航等),但是当包含这些部分时会弄乱翡翠的缩进。显然,缩进错误的 Jade 文件会生成错误嵌套的 HTML。
app/index.jade
body
ul.navbar
h1.logo
| Logo
.container
| Lorem Ipsum...
.footer
@@include('./_footer.jade')
app/_footer.jade
.footer-content
| hello
a(href) my link
app/gulpfile.js
var gulp = require('gulp');
var fileinclude = require('gulp-file-include');
return gulp.src('./index.jade')
.pipe(fileinclude({
prefix: '@@',
basepath: '@file'
}))
.pipe(gulp.dest('dist/'));
});
输出
body
ul.navbar
h1.logo
| Logo
.container
| Lorem Ipsum...
.footer
.footer-content
| hello
a(href) my link
@@include('./_footer.jade') 在代码中明显嵌套在.footer,但_footer.jade 的内容在外部呈现。
如果有人有使用此 gulp-file-include 插件和模板语言的经验,我很想听听您是如何解决它的!
【问题讨论】:
-
gulp-file-include旨在解析 HTML,使模板缩进难以使用(不可能?)。在gulp-file-include在第二个任务中编译部分内容之前,我采用了将模板编译为 HTML 的方法。见答案。
标签: javascript gulp