0

我想通过简单地使用 @import "mixinfile" 来创建一个带有不同 mixin 的 scss 文件,而不是在每个项目中复制该文件。类似于将文件夹添加到 Windows 中的路径。我怎样才能做到这一点?

4

3 回答 3

2

Compass 是 Sass 框架,它不仅提供了大量有用的函数和 mixin,而且还允许您轻松创建自己的扩展。如果您将扩展捆绑为 gem(我个人建议这样做),您将不必记住将其放在文件系统上的位置。

http://compass-style.org/help/tutorials/extensions/

当一个扩展作为 Ruby gem 安装时(这很容易做到,即使你对 Ruby 一无所知),你需要做的就是在你的 config.rb 文件中添加这样的一行:

require "extension-name"

它将使您扩展中的所有样式表都可以访问,就像您在项目目录中拥有它们的副本一样:

@import "extension-name/widgets";

Compass 的作者有一个关于如何在这里编写自己的扩展的截屏视频(不包括从扩展中创建 gem):

http://chriseppstein.github.com/blog/2010/08/01/building-a-personal-framework/

于 2013-01-28T13:23:25.853 回答
1

如果您使用的是 Mac,我建议您使用 Codekit 作为预编译器,它为您提供了为您的每个项目导入自己的框架的机会。好东西。

在那里寻找@import 语句http://incident57.com/codekit/help.php

于 2013-01-28T13:46:15.003 回答
0

假设你的 mixin 的名称是“example”。因此,您可以在 .scss 文件中写入“@import example”。为了让它工作,你必须在你的样式表路径中有一个名为“_example.scss”的文件。

现在,你说你想跨项目共享这个 mixin。为此,您必须通过 lib 加载您的 mixin,如果我们谈论的是 rails,最好的方法是使用 rails 引擎(请参阅 bourbon gem 源代码)。然后将其作为依赖项添加到您的 gemfile 中(您可以使用 git uri 或其他类型的源)。

于 2013-01-28T12:00:16.263 回答