Rails 资产管道挂起

Posted

技术标签:

【中文标题】Rails 资产管道挂起【英文标题】:Rails asset pipeline hangs 【发布时间】:2014-02-24 18:18:40 【问题描述】:

我在开发环境中运行 Rails 3.2。不知何故,我遇到了这样一种情况,即在尝试交付新页面时,调试时对代码的任何更改都会挂在资产管道中。通过挂起,我的意思是它需要很长时间,这通常会导致某处超时。目前我正在调试一些 javascript,所以除了一个 JS 文件之外,所有资产都没有改变。我在任何地方都看不到错误消息。当我使用 Chrome 查看网络活动时,它总是挂在等待交付的 application.js 上,这是 js 清单所在的位置。

解决方法似乎是:

清除浏览器上的 cookie 和缓存 重启应用服务器 去localhost:3000重新登录。

每次我在 JS 中更改一行代码时都必须这样做。

很明显,我做错了什么,而这曾经可以正常工作。没有新的宝石,所以新的工作流程。据我所知,我并没有意外地预编译资产。

为什么管道会在交付我的自定义 JS(不是引导程序或角度)时挂起?为什么以这样的方式解决工作?

我注意到关于此的几个未解决的问题,所以如果有人知道它可能会对我们中的一些人有所帮助。

【问题讨论】:

【参考方案1】:

我也有同样的经历。删除 Rails 的 tmp 文件夹现在似乎已经解决了。

【讨论】:

以上是关于Rails 资产管道挂起的主要内容,如果未能解决你的问题,请参考以下文章

Rails 3.1 资产管道供应商/资产文件夹组织

Rails 5 - 如何在资产管道中包含所有供应商资产?

Rails 6 的资产管道中不存在资产“application.js”

关于 rake 资产的困惑:在 rails 中的资产管道上清理 / 清理

从 Rails 资产管道中清除缓存

Rails 6 中的 ActionView::Template::Error(资产管道中不存在资产。)