【问题标题】:Rails 3 - How to use stylesheet's compiled name inside javascript file?Rails 3 - 如何在 javascript 文件中使用样式表的编译名称?
【发布时间】:2012-05-25 06:59:57
【问题描述】:

我在 Rails 应用程序中有 javascript 文件,我在其中拉入这样的样式表 -

   loadAssets: function(){ 
    var stylesheet = document.createElement('link');
    stylesheet.href = "<%= asset_path('lib/myStyles.css') %>"; 
    stylesheet.rel = 'stylesheet';
    stylesheet.type = 'text/css';
    document.getElementsByTagName('head')[0].appendChild(stylesheet);
}

但是这里使用的asset_path助手,只是给出了简单的myStyles.css名称,它应该是那个css文件的编译名称。

因此,我无法使缓存过期并获取新的 myStyles.css 文件。

所以,我的问题是,如何在我的 javascript 文件中获得这个 myStles.css 文件的编译名称。上面包含 javascript 文件的代码也会被编译。

【问题讨论】:

  • 我怀疑让资产管道在js之前编译css可以让asset_path函数产生正确的路径?

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1 asset-pipeline


【解决方案1】:
<%= asset_path('lib/myStyles.css'), :digest => true) %>

【讨论】:

  • 你需要确保它是一个js.erb文件才能嵌入ruby
  • 当然。我假设如果asset_path 为他们返回任何名称,它已经是一个js.erb 文件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-04-04
  • 2013-07-23
  • 1970-01-01
  • 1970-01-01
  • 2012-01-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多