我有一个Rails / Angular应用程序,我发现当我更新Angular代码时,它不会立即反映在(开发)应用程序中。我习惯于Rails 重新加载来审核循环,并且不得不重新启动Rails应用程序并登录到&在反映角度变化之前退出应用程序。
我认为这是资产管道的一个问题,因为我用它来提供Angular资产。我已经在SO上寻找解决方案并找到了一些类似的问题,但没有真正的解决方案。
有没有人知道如何强制资产管道缩小并提供对Angular js的更改而无需重新加载服务器?更复杂的是,大多数js都是用coffeescript编写的。
答案 0 :(得分:1)
如果手动预编译资产rake assets:precompile
,则可以避免重启。当您在apache或nginx中重新加载服务器时,将不会编译资产。您需要重新启动它,以便在发出对服务器的请求时,将编译资产。当您在任何js中进行更改时,css文件确保您手动编译它们。
答案 1 :(得分:0)
自从您最近运行rake assets:precompile
命令以来,该脚本已创建一个文件夹public/assets
并生成了浏览器可能要求的所有资产文件。因此,当您在js / CSS资产文件中进行新更改时,来自浏览器的请求将从public/assets
目录得到服务。
rm -df public/assets
rake assets:clean