是否有可用于现有HTML代码的简单HTML预处理器,我不需要修改现有的html以符合预处理器语法?
我正在开发一个带有几个用html构建的页面的移动应用程序,但是我开始遇到在更改类似内容(页眉,页脚等)时必须更新每个页面的问题我不想要复制内容和不匹配,而不是我想使用具有include方法的预处理器(类似于php的方式),以便我可以包含这些类似的内容。
我看过HAML& Jade,但似乎他们有一个严格的语法,你需要跟随缩进和排序或编辑html包含每行的管道,否则事情不会编译。
就像我说我已经存在html我只想剪切&将我的HTML粘贴到不同的文件中,包含它们并坚持使用该工作流程,因为我认为这是最简单的。
但如果有人有任何其他想法我如何解决我的情况也是受欢迎的。
答案 0 :(得分:4)
我想因为您的要求是只包含您不需要完整模板系统的文件。您可以查看gulp-include这是一个包含文件的gulp插件。使用gulp
具有以下优势:gulp带有监视功能,可以监视文件系统的变化 - 只要检测到更改,就可以触发任务。
gulpfile.js
看起来像
var gulp = require('gulp');
var include = require('gulp-include');
gulp.task('template', function() {
return gulp
.src('*.html')
.pipe(include())
.pipe(gulp.dest('dist'))
});
gulp.task('dev', function() {
gulp.watch('*.html', ['template']);
});
gulp.task('default', ['template']);
这个gulpfile
注册一个'模板'任务,它接受所有html文件并使用gulp-include插件处理文件的内容。模板任务被注册为默认gulp任务。因此,如果您在没有任何命令行参数的情况下调用gulp,则运行模板任务。 gulp'dev'任务允许您从监视所有html文件进行更改的命令行运行gulp dev
,并在html文件发生更改时触发模板任务。
gulp include plugin扫描你的html文件,比如
= include relative/path/to/file.html
并包含'file.html'内容。
在gulp-include网站上详细记录了包含语法。