Gulp将HTML片段注入命名目标

时间:2017-11-14 17:23:12

标签: gulp gulp-inject

我们将低级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片段并将其注入。

有关帮助我朝正确方向前进的任何提示吗?

谢谢!

0 个答案:

没有答案