如何使用Gulp.js从HTML中删除注释?

时间:2014-11-06 04:32:28

标签: html gulp

我刚开始使用gulp.js,我想知道是否有办法从我的HTML文件中删除注释。当然,我不希望从原始文件中删除注释,只是那些将在生产中的注释。假设我有这样的文件:

index.html //在gulp之前

<html>
    <!-- Some comments -->
    <!-- Some more comments -->
    <div>
        // some stuff
    </div>
</html>

index.html // gulp

之后
<html>
    <div>
        // some stuff
    </div>
</html>

我的部分问题是,我不确定这应该如何运作。我想把我所有的gulped HTML文件(删除注释)放在一个单独的目录中,只将它推到我的服务器上?我仍然希望评论存在于我的测试环境(以及我的repo)上的HTML文件中,而不是存在于生产中的文件中。如果有任何帮助我理解如何做到这一点将非常感谢!

4 个答案:

答案 0 :(得分:4)

gulp-htmlmin你可以这样做:

.pipe(htmlmin(
  {
    removeComments: true
  }
))

请参阅https://github.com/kangax/html-minifier#options-quick-reference了解所有可用选项。

答案 1 :(得分:2)

我通常使用gulp-htmlmin来删除可以在html文件上进行的许多其他优化中的注释。我有一个SRC文件夹,其中包含带有注释的源html文件和包含所有优化资产(还有js,css和html)的BUILD文件夹,并且我在生产模式下从build文件夹中提供文件。

答案 2 :(得分:0)

使用https://www.npmjs.org/package/gulp-preprocess,您可以删除评论。

所以你会有一个文件夹 - 如上所述 - 用于pre gulp文件,一个文件夹用于它之后。

然后你可以完成2个不同的任务。一个只复制html文件,另一个复制它们并删除注释。

答案 3 :(得分:0)

也许最简单的方法是使用gulp-decomment

set "prefix=Week"
for /l %%x in (1, 1, 52) do (
    set /a num=%%x
    set direc=%prefix%%num%
    mkdir %direc% 
)