计算grunt观看的文件

时间:2016-08-04 02:52:30

标签: javascript angularjs node.js gruntjs

我的客户端有一个新的Angular + Node项目,我在我的本地设置了它。应用程序运行正常。但是一个问题是当我运行grunt命令并且我的系统挂起时,CPU占用100%。但是在我的客户端机器上配置相同,一切似乎运行正常。

在查看了很多线程之后,我发现当grunt正在观看太多文件时会出现这种问题。我还使用grunt watch --verbose来查看我正在观看的文件。实际上,我觉得我们正在观看很多不必要的文件,比如angluar和jquery库文件。

有没有办法/插件可以通过grunt命令准确计算我正在观看的文件数量?

1 个答案:

答案 0 :(得分:2)

如果它在配置/环境相同但功能更强的机器上运行正常,那么我认为你假设你正在观看太多文件是正确的。

如果您还没有,那么您应该在配置上运行grunt watch,该配置只会监视一些文件,以进一步支持您只是看到太多文件的路径。

最后,您应该只看到需要观看的文件,换句话说,在开发过程中实际上会发生变化。第三方图书馆等绝对不应包含在该集合中!

我建议您只观看需要观看的文件,并且可以准确指定需要观看的文件或使用具有某种程度特异性的glob模式。我还要指出你可以使用带有glob的否定运算符!

如果遵循我的建议,你仍然遇到同样的问题,我有三个选择:

  1. 创建更具体的监视任务,一次只运行其中一个或两个。
  2. 升级硬件
  3. 根本不使用监视,只需从命令行手动触发任务。
  4. 修改 添加以下评论的答案,因为它直接解决了问题。

    要计算grunt监视的文件,请使用linux find命令并将其传递给wc -l。因此,如果您在项目根目录中运行并想要计算生成在src目录及其子目录中的扩展名为.js的文件数,那么这看起来就像find . -name "src/*.js" | wc -l。我们在这里做的是找到符合条件的所有文件,然后通过使用带有-l的wc命令计算文件数量来计算stdout中的换行符。