gpt4 book ai didi

ruby-on-rails - 通过 http 而不是文件系统导入 SASS 部分

转载 作者:数据小太阳 更新时间:2023-10-29 07:54:07 25 4
gpt4 key购买 nike

我有一个 Rails 项目,我想在其中根据用户变量动态创建一个 sass 文件(作为用户自定义站点的一种方式)。我需要通过 http 将该文件 @import 到站点的主 sass 文件中,因为它是动态生成的,并没有实际写入文件系统。

如何配置 :load_paths 指令来告诉 SASS 通过 http 而不是通过文件系统查找该文件?

文档说这是可能的,但我在网上找不到任何示例。 http://sass-lang.com/docs/yardoc/file.SASS_REFERENCE.html#custom_importers

最佳答案

本文档讨论的是您可以实现自己的导入器;以 HTTP 为例。幸运的是,这样做并不难。

在这里,我实现了一个简单的 HTTP 导入器:https://gist.github.com/1111803

它不会尽可能积极地缓存,你应该知道,除了文件系统之外,Sass 还会使用它来查找所有导入(如果你使用像 Compass 这样的框架,那么有很多这样的框架)。如果您需要更高的性能,您应该在这种情况下缓存失败。不过,它似乎在我的测试中有效。

您可以通过请求 sass_http.rb 文件然后将其添加到加载路径来简单地使用它:

require 'sass_http'
Sass::Plugin.options[:load_paths] ||= []
Sass::Plugin.options[:load_paths] << Sass::Importers::HTTP.new("http://stylesheets.example.com/")

当前路径必须引用目录(即以斜杠结尾)。您应该获得所有常用的调试信息(使用 HTTP,而不是文件系统、路径)。

关于ruby-on-rails - 通过 http 而不是文件系统导入 SASS 部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6857988/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com