Vagrant,Ember-cli,Windows 8.1,Ubuntu。 Livereload 不起作用!当我从 Windows 保存时它没有检测到变化

Vagrant, Ember-cli, Windows 8.1, Ubuntu. Livereload doesn't work! It doesn't detect changes when I save from Windows

我有这个 VagrantFile:

Vagrant.configure("2") do |config|
  # Use Ubuntu 14.04 Trusty Tahr 64-bit as our operating system
  config.vm.box = "ubuntu/trusty64"

  # Configurate the virtual machine to use 2GB of RAM
  config.vm.provider :virtualbox do |vb|
    vb.customize ["modifyvm", :id, "--memory", "2048"]
  end

  # Forward the Rails server default port to the host
  config.vm.network :forwarded_port, guest: 4200, host: 4200
  config.vm.network :forwarded_port, guest: 35729, host: 35729

一切正常,在我的 Windows 中,我可以访问 http://localhost:4200 并且一切正常。但是,有一个很大的但是。

我在与 vagrant 共享的 Windows 文件夹中有 ember 的项目文件。

如果我将我的 ember 项目的文件保存在 Windows 中,我将无法使用 livereload,而在我的 vagrant ssh 中,我什至无法查看检测到的更改。

如果我使用 vagrant ssh 并使用 nano application.hbs 然后保存一些新的东西,它会检测到更改并且 livereload 在 [=35] 上我的 Chrome 的 window 中工作=].

这到底是什么问题?

我相信这可能对您有所帮助:http://www.ember-cli.com/user-guide/#usage-with-vagrant

您似乎没有回退到轮询观察器。

而且您没有使用 NFS,因为它不在您的配置中。对于 windows 用户,您应该使用 winnfsd plugin 并使用 vagrant plugin install vagrant-winnfsd

安装

我用这个解决了这个问题:ember serve --watcher polling。与 Vagrant 共享 NFS 在 Windows.

上不起作用

Vagrant 在您的桌面和 VM 之间同步目录的方式将破坏默认机制 ember-cli 用于监视文件并在随后编译更新时导致问题。

要恢复此功能,您可以将以下行添加到“.ember-cli”文件

"liveReload": true,
"watcher": "polling"

或使用后备轮询观察器调用服务命令。

ember serve --watcher polling