Rails:视图(和相关)文件更改时自动刷新浏览器
Posted
技术标签:
【中文标题】Rails:视图(和相关)文件更改时自动刷新浏览器【英文标题】:Rails: Refresh browser automatically when view (and related) files change 【发布时间】:2011-01-19 14:35:59 【问题描述】:我的很多工作(在 Rails 中)实际上都是围绕视图、图像、SASS/CSS 和 Coffescript/javascript 文件进行的,我希望有一个解决方案来刷新浏览器,每当我对其中任何一个进行更改时这种类型的文件。有点像 autotest 或 watchr 但用于“设计”任务。
我查看了 watchr 和 fs-event,它们似乎提供了相关的功能并浏览了网络,但我还没有找到任何现成的解决方案。我错过了什么?很难相信这还没有完成——这些工具显然是存在的。
假设这样的工具真的不存在,我想尝试编写自己的解决方案。因此,如果您对要考虑的内容、在哪里查看有趣的项目等有一些建议,我也将不胜感激。
更新 示例工作流程如下所示:
-
在终端中启动“观察者应用程序”
Rails 服务器在未运行时启动
浏览器窗口会自动打开并指向 Rails 服务器
我去更改一个视图中的一些 html
浏览器自动刷新
我更新了一些 CSS
浏览器自动刷新
我添加了一个新的 JS 文件
浏览器自动刷新
…
干杯!
【问题讨论】:
【参考方案1】:根据您的描述,我认为LiveReload 会为您解决问题。
您需要更改 .livereload
文件,以便仅在特定文件更改时重新加载浏览器,但这一切都包含在自述文件中(滚动到配置部分)
还有 XRefresh 可以做几乎相同的事情,但我从未使用过。
【讨论】:
Livereload 看起来不错!你碰巧知道我是否可以在 Firefox 中使用它? XRefresh 似乎正是我想要的。谢谢!【参考方案2】:试试Guard::Livereload。当“查看”文件被修改时,它会自动重新加载您的浏览器。
有关更多信息(和演示),请参阅:http://asciicasts.com/episodes/264-guard
【讨论】:
【参考方案3】:也许您正在寻找类似这个项目的东西?
https://github.com/logankoester/autorefresh
【讨论】:
这看起来也很棒!必须读一点,但这可能正是我想要的。谢谢。 好吧,这太棒了——谢谢!虽然我不太喜欢将代码插入到我的项目中来完成这项工作。【参考方案4】:已经有一段时间了,但我发现了一些我认为比这些选项中的任何一个都更好的东西。使用Live.js,您甚至不需要修改您的项目,您只需点击小书签,它会在发生变化时自动更新。
唯一的缺点是你会在你的服务器日志中收到很多 HEAD 请求,但是因为我在进行样式编辑时使用它,这并没有真正困扰我。我宁愿拥有它,然后不得不修改我的项目只是为了一个开发工具。
【讨论】:
看起来是个有趣的选择。然而,有了 Rails 4 和 SSE,我期待一个只有 Rails 的版本作为 gem 几乎会立即弹出。以上是关于Rails:视图(和相关)文件更改时自动刷新浏览器的主要内容,如果未能解决你的问题,请参考以下文章