【问题标题】:Sprockets dependencies based on ENV vars基于 ENV 变量的 Sprockets 依赖项
【发布时间】:2014-05-23 01:12:26
【问题描述】:

我希望能够使用环境变量将特定于站点的样式表与 sass 变量交换,从而为 Rails 应用程序的实例定义颜色。我似乎无法弄清楚如何在 sprockets 指令中使用 ruby​​ 代码来定义依赖项。

看起来应该可行:

// stylesheets/application.css

/*
 *= require "#{ENV['SITE_STYLESHEET']}"
 *= require core
 *= require profile
 */

ENV['SITE_STYLESHEET'] = my_stylesheetstylesheets/my_stylesheet.scss 存在的位置。`

我收到的错误是:couldn't find file '#{ENV['SITE_STYLESHEET']}'

有没有办法在指令中使用 ruby​​?

【问题讨论】:

  • 我自己没有尝试过,但我很确定需要添加 .erb 扩展名才能访问 env 变量
  • 是的,我试过了,但 sprockets 似乎在 ERB 之前处理。

标签: ruby-on-rails sass sprockets


【解决方案1】:

这可能不是最有说服力的方法,但我认为你可以这样做。

  1. 创建初始化程序/assets.rb

在这个文件中

Rails.application.config.assets.precompile += %w( ENV['SITE_STYLESHEET'] )

【讨论】:

    猜你喜欢
    • 2023-03-04
    • 2011-01-15
    • 2016-06-18
    • 1970-01-01
    • 2017-01-24
    • 2018-02-20
    • 1970-01-01
    • 1970-01-01
    • 2020-08-08
    相关资源
    最近更新 更多