我正在寻找执行以下操作,如果没有大量的摆弄,我似乎无法弄清楚如何。
我想为我的主题设置两个图标集。一黑。一白。我的主题有两种不同的配色方案可供您选择。灰色和蓝色。在灰色主题上,我想要黑色图标,在蓝色主题上,我想要白色。
我已经很好地创建了我原来的黑色图标集并将它们包含在一个文件夹中icon/*.png
现在我想使用的是嵌套文件夹设置,我的图标位于以下文件夹icon/black/*.png
中icon/white/*.png
这样做的问题是我的图标将像这样命名,black-add
而white-add
我真正想要的是icon-add
这样我就不必更改我的主题@import icon-sprite(add)
行,我只需将正确的sprites/_black
或包含sprites/_white
在顶级主题 sass 文件中。
是否有一些我缺少的配置允许我这样做?还是我以错误的方式解决这个问题?
我通过创建一个包含所有图标的通用 icon/*.png 文件夹,然后复制生成的 _icon.sass 文件并为黑白图标编辑它来解决这个问题。然后在我的灰色主题中包含“精灵/黑色”,在我的蓝色主题中包含“精灵/白色”。这行得通,但是当您想添加新图标时,它有点像 PITA。
这里的任何帮助将不胜感激!
更新澄清
当前文件夹结构。
themes/
images/
default/
icon/
black/
white/
blue/
配置文件
# $ext_path: This should be the path of the Ext JS SDK relative to this file
$ext_path = "../"
# sass_path: the directory your Sass files are in. THIS file should also be in the Sass folder
# Generally this will be in a resources/sass folder
# <root>/resources/sass
sass_path = File.dirname(__FILE__)
# css_path: the directory you want your CSS files to be.
# Generally this is a folder in the parent directory of your Sass files
# <root>/resources/css
css_path = File.join(sass_path, "..", "css")
images_path = File.join(sass_path, "..", "themes", "images", "default")
generated_images_dir = File.join(sass_path, "..", "themes", "images", "default")
generated_images_path = File.join(sass_path, "..", "themes", "images", "default")
http_generated_images_path = File.join("..", "themes", "images", "default")
sprite_load_path = File.join(sass_path, "..", "themes", "images", "default")
# output_style: The output style for your compiled CSS
# nested, expanded, compact, compressed
# More information can be found here http://sass-lang.com/docs/yardoc/file.SASS_REFERENCE.html#output_style
output_style = :compressed
# We need to load in the Ext4 themes folder, which includes all it's default styling, images, variables and mixins
load File.join(File.dirname(__FILE__), $ext_path, 'themes')
重新阅读我的配置文件,就像我想为 sprite_load_path 设置多个条目或取消“默认”连接。