【问题标题】:Automatically compiling persistent css without compass watch无需指南针手表自动编译持久 css
【发布时间】:2013-03-06 11:11:04
【问题描述】:

我有一个基于 this example 的 compass sinatra 项目。

this commit in a pull requestthis pull request comment 中所述,sinatra 能够根据请求自动生成编译后的 css 文件。

但是,这似乎是一种浪费,因为即使 css 文件没有更改,服务器也必须重新编译。如果服务器监视更改,根据文件更改重新编译,但会按需提供相同的静态 css 文件,这不是更好吗?这就像我们运行“指南针手表”并提供编译后的文件一样工作。

然后我的问题是:有没有一种好方法可以让 sinatra 在更改时自动将我的 sass 文件编译为静态 CSS,而无需单独运行 watch compass?

注意:我还有一个 express/node/stylus 项目,它的行为是这样的,这让我相信这是可能的并且是合乎逻辑的方式,我只是错误地配置了我的 sinatra 应用程序。

【问题讨论】:

  • 或者:有没有一种好方法可以让 sinatra 自动将我的 sass 文件根据需求编译成静态 CSS,而无需单独运行 watch compass?

标签: ruby configuration sinatra compass-sass


【解决方案1】:

要更改 CSS,您必须:

  • 将新文件推送到应用服务器(可能需要重启)
  • 在后台重新编译(例如服务器上的compass watch
  • 让服务器编译更改(使用类似于您提供的示例)

就个人而言,我更喜欢第一个。我不知道为什么我希望服务器编译 static 资产?它占用了宝贵的资源,而且我的开发机器上的 CSS 发生了变化,那么为什么不在我的开发机器上编译它们呢?我没有听到这些问题的好答案,所以我使用Guardfile(或者您可以使用sass watchcompass watch 作为后台任务,例如sass --watch app/views/stylesheets:app/public/css &)来编译它们,然后我签入.css 文件并将它们推送到服务器。

YMMV。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多