有与OP相同的问题:grunt watch对于编译.less文件和liveReload非常慢,所以这就是我所做的:
安装time-grunt以显示每个任务的执行时间:
$ npm install --save-dev time-grunt
Run Code Online (Sandbox Code Playgroud)
然后在模块导出后立即放置此行:
module.exports = function(grunt) {
require('time-grunt')(grunt);
Run Code Online (Sandbox Code Playgroud)
在运行grunt之后,您将注意到哪些任务比其他任务花费更长时间.在我的情况下,它是在每个文件更改加载所有依赖项,所以我找到了这个解决方案:
安装jit-grunt以按需加载依赖项,而不是每次grunt执行任务时加载所有这些依赖项.
$ npm install jit-grunt --save-dev
Run Code Online (Sandbox Code Playgroud)
并替换gruntfile中的初始加载器
require('load-grunt-tasks')(grunt);
Run Code Online (Sandbox Code Playgroud)
同
require('jit-grunt')(grunt);
Run Code Online (Sandbox Code Playgroud)这为.css更新节省了我的liveReload时间,从~1600ms到~250ms.
PS:@curist也提出了jit-grunt,但我认为更多细节可能对任何人都有帮助.
听起来您的计算机是这里的问题,除了升级之外您没有太多选择。
我唯一能想到的是并发任务,如果你可以并发运行这些任务,你可能会节省一些时间。
您可以使用回购协议中所述的grunt-concurrent :
同时运行 Coffee 和 Sass 等缓慢任务可能会显着缩短构建时间。如果您需要同时运行多个阻塞任务(例如 nodemon 和 watch),此任务也很有用,如示例配置中所示。
您还可以使用此技巧仅在需要时加载任务。
| 归档时间: |
|
| 查看次数: |
3290 次 |
| 最近记录: |