Laravel 拉维长生不老药-吞咽手表直到终端获得焦点才结束
我正在使用Laravel Elix和Gulp(在Windows 8上)组合并编译我的Laravel 拉维长生不老药-吞咽手表直到终端获得焦点才结束,laravel,gulp,focus,watch,laravel-elixir,Laravel,Gulp,Focus,Watch,Laravel Elixir,我正在使用Laravel Elix和Gulp(在Windows 8上)组合并编译我的Angular.js和SCSS文件。请参阅下面的代码: var elixir = require('laravel-elixir'); require('./tasks/angular.task.js'); require('./tasks/bower.task.js'); require('laravel-elixir-livereload'); elixir.config.js.outputFolder =
Angular.js
和SCSS
文件。请参阅下面的代码:
var elixir = require('laravel-elixir');
require('./tasks/angular.task.js');
require('./tasks/bower.task.js');
require('laravel-elixir-livereload');
elixir.config.js.outputFolder = 'public/js/';
elixir(function(mix){
mix
.sass('app.scss')
.bower()
.angular('resources/assets/angular/');
});
问题是,当我运行gulpwatch
时,组合的all.js
文件将不会更新,直到我单击终端窗口(给它焦点)。这表明大口大口的人已经完成了任务:
[13:26:45] Finished 'angular in resources/assets/angular/' after 26 ms
在阅读了之前的评论后,我认为如果愿意,仍然有一个解决方案可以使用: 转到“同步”部分下的“系统设置”,可以在应用程序空闲时设置文件在计时器上保存 这样,您可以在键入时按预期运行watcher
您确定是在完成时,还是在终端窗口更新时?因为处理它所花费的时间(26毫秒)看起来不错。您使用的是默认的
cmd
,还是其他替代方法,如cmder、Console2等?我也尝试等待30-40秒,但all.js
仅在单击终端窗口后立即更新。我使用的是标准windowscmd
。所谓“更新”是指将文件写入磁盘还是在浏览器中更新文件?(我看到你在使用LiveReload)。很抱歉,我不清楚这一点,我的意思是将文件写入磁盘。在我点击终端窗口之前,它“感觉”就像一直留在内存中。我现在将删除所有节点模块,并尝试重新安装,看看是否有帮助。我会把结果贴在这里。因此,我做了一些进一步的测试,似乎它确实将文件写入磁盘。只有我的IDE(PhpStorm)才会更新文件的表示形式,直到我模糊IDE,然后将焦点放回它(因此我认为终端上的焦点是更新文件的原因)。这个问题现在似乎毫无意义,我是否应该删除它?