我们将低级html标记作为npm模块处理,其中可以通过注释指定其支持html将在该位置注入的模块的名称。一个模块包含html,支持SCSS和vanilla JS。来自SCSS& JS立场一切都搞定了。在安装模块的那一刻,SCSS被编译,连接和安装。附加到核心CSS文件然后缩小。 JS处理非常相似。
我对此非常感兴趣的是如何处理html片段。这就是我所拥有的,它有效,但这在任何方面都不是动态的。
gulp.task('inject-atoms', function () {
gulp.src('./index.html')
.pipe(inject(gulp.src(['./node_modules/my-module-name/my-module-name.html']), {
starttag: '<!-- inject:html -->',
transform: function (filePath, file) {
return file.contents.toString('utf8')
}
}))
.pipe(gulp.dest('./'));
});
我希望能够(在目标index.html文件中)指定其html片段被注入的模块名称。如下所示:
<!-- inject:my-module-ABC --!>
<!-- inject:my-module-XYC --!>
唯一的要求是在尝试注入片段之前已经安装了模块。因此gulp任务需要扫描索引文件,并且对于每个注入注释,请获取该模块的html片段并将其注入。
有关帮助我朝正确方向前进的任何提示吗?
谢谢!