BrowserSync 文件更改不会随 Vagrant 传播

Posted

技术标签:

【中文标题】BrowserSync 文件更改不会随 Vagrant 传播【英文标题】:BrowserSync file changes are not propagated with Vagrant 【发布时间】:2016-10-12 13:33:04 【问题描述】:

我在 Windows 上使用 vagrant box (Varying Vagrant Vagrants)。我正在使用最新的 Virtualbox 和适当的来宾插件 (5.0.26)。

我的 Vagrantfile 中有以下设置

# Browsersync port forward
config.vm.network :forwarded_port, guest: 3000, host: 3000, auto_correct: true
config.vm.network :forwarded_port, guest: 3001, host: 3001, auto_correct: true

使用这个命令:

browser-sync start --proxy "sitename.dev" --files "assets/css/*.css"

browsersync 已正确初始化。当我直接在虚拟机中更改 css 文件时,一切正常,css 被注入到我的浏览器中。 当我更改主机文件系统中的文件时,没有任何反应。浏览器同步不知道文件更改(文件在主机和虚拟文件系统之间正确同步)。

我也尝试过使用 nfs 和简单的 Virtualbox 同步文件夹。 (不仅仅是这里描述的 NFS:https://github.com/fideloper/Vaprobash/issues/368)

我怎样才能让它工作?

编辑: 我已经完成了这项工作并根据它回答了我的问题。 顺便说一句,此解决方案也适用于 NFS,并且与主机操作系统无关。

【问题讨论】:

【参考方案1】:

此处描述的解决方案:https://github.com/BrowserSync/browser-sync/issues/318#issuecomment-98355661@faergeek

只需将 usePolling: true 添加到您的 bs-config.js 中,如下所示:

module.exports = 
    "files": 'assets/css/*.css',
    "watchOptions": 
        usePolling: true
    ,
    "proxy": ''
;

然后像这样开始浏览器同步:

browser-sync start --config bs-config.js

【讨论】:

以上是关于BrowserSync 文件更改不会随 Vagrant 传播的主要内容,如果未能解决你的问题,请参考以下文章

浏览器同步测试神器 — BrowserSync

在 XAMPP 上运行的 GRUNT + LESS + BROWSERSYNC

Browsersync 简介 and 使用

gulp+browserSync自动刷新页面

Browsersync的安装及使用方法

gulp 和 Browsersync 的联合使用