Ruby on rails 使用资源管道时不反映角度变化

Ruby on rails 使用资源管道时不反映角度变化,ruby-on-rails,angularjs,asset-pipeline,Ruby On Rails,Angularjs,Asset Pipeline,我有一个Rails/Angular应用程序,我发现当我更新Angular代码时,它不会立即反映在(开发)应用程序中。我已经习惯了Rails从重新加载到查看的循环,在角度变化被反映出来之前,我必须重新启动Rails应用程序并登录和退出应用程序 我假设这是资产管道的问题,因为我正在使用它来交付角度资产。我环顾了一下SO,寻找解决方案,发现了一些类似的问题,但没有真正的解决方案 有人知道如何在不需要重新加载服务器的情况下强制资产管道缩小并服务于Angular js的更改吗?更复杂的是,大多数js都是用

我有一个Rails/Angular应用程序,我发现当我更新Angular代码时,它不会立即反映在(开发)应用程序中。我已经习惯了Rails从重新加载到查看的循环,在角度变化被反映出来之前,我必须重新启动Rails应用程序并登录和退出应用程序

我假设这是资产管道的问题,因为我正在使用它来交付角度资产。我环顾了一下SO,寻找解决方案,发现了一些类似的问题,但没有真正的解决方案


有人知道如何在不需要重新加载服务器的情况下强制资产管道缩小并服务于Angular js的更改吗?更复杂的是,大多数js都是用coffeescript编写的

如果手动预编译资源,
rake assets:precompile
则可以避免重新启动。在apache或nginx中重新加载服务器时,不会编译这些资产。您需要将其重新启动,以便在向服务器发出请求时,将编译这些资产。当您在任何js中进行更改时,css文件确保您手动编译它们

可能原因 由于您最近运行了
rakeassets:precompile
命令,脚本已经创建了一个文件夹
public/assets
,并生成了浏览器可能需要的所有资产文件。因此,当您在js/CSS资产文件中进行新更改时,来自浏览器的请求将从
public/assets
目录中提供

解决方案
  • rm-df公共/资产
  • rake资产:清理

  • 您可以尝试重置资产的时间戳吗?它可能会重新加载资产你是说用触摸命令吗?源文件的时间戳将在保存时更新。。。不确定编译的资产。资产管道不应该是问题,因为您正在开发模式下工作。谢谢@GhostRider您是对的。那么,是什么过程将使用coffeescript编写的Angular代码进行编译和缩小,并将其发送到浏览器呢?请注意:这种方法意味着我不必重新启动Rails服务器,但我仍然需要登录/注销应用程序。