在不使用Compass项目的情况下使用Compass(sass)功能

在不使用Compass项目的情况下使用Compass(sass)功能,sass,compass-sass,Sass,Compass Sass,我的问题是:我想使用一些指南针功能(主要是精灵生成和css3混合),但我不想为它创建指南针项目。我的项目结构应该比compass允许我创建的要复杂一些。所以我想继续使用sass进行我的项目,但是在其中导入并使用一些compass特性。有可能吗?Compass可以管理您所有的东西。试试看 下面是一个例子,这是我目前正在进行的一个Compass项目的结构: 首先,您应该有一个类似于sass的文件夹,用于存储非部分sass文件,例如。gsass/style.sass或sass/screen.scss

我的问题是:我想使用一些指南针功能(主要是精灵生成和css3混合),但我不想为它创建指南针项目。我的项目结构应该比compass允许我创建的要复杂一些。所以我想继续使用sass进行我的项目,但是在其中导入并使用一些compass特性。有可能吗?

Compass可以管理您所有的东西。试试看

下面是一个例子,这是我目前正在进行的一个Compass项目的结构:

首先,您应该有一个类似于
sass
的文件夹,用于存储非部分sass文件,例如。g
sass/style.sass
sass/screen.scss
。您的
config.rb
应该指向它

然后创建一个名为
partials
的子文件夹,在其中存储所有内容

partials
子文件夹中,开始创建结构:

sass/
  partials/
    _global.sass
    _modules.sass
  style.sass
style.sass的内容应该如下所示:

@import partials/global
@import partials/modules
这种结构易于扩展。一旦您的分部变大并决定拆分它,只需创建一个以分部命名的子文件夹,在那里创建较小的分部,然后从初始分部导入它们:

sass/
  partials/
    global/
      _extendables.sass
      _functions.sass
      _mixins.sass
      _variables.sass
    _global.sass
    _modules.sass
  style.sass
\u global.sass的内容

@import global/extendables
@import global/functions
@import global/mixins
@import global/variables
这使得项目结构易于扩展

请注意,如果您使用的是SCSS语法,则在import语句中必须使用引号,例如。g<代码>@import“全局/可扩展”


如果导入不适用于您,请共享您的项目结构、您使用的确切代码和收到的错误文本。

您是否愿意共享有关您的项目组织和您使用的环境的更多信息?我希望保留非常小的部分,类似于块描述,这样会有很多。最好为每个块都有一个文件夹,里面有.scss、.js和图像。否则,数百个文件将变得一团糟。但是我不能让compass使用子文件夹中的分区。compass不关心你把分区放在哪里,它只关心它需要编译的Sass文件在哪里。如果您正在使用图像帮助器函数,则图像只需要位于已配置的图像目录中。@cimmanon,嗯,我有一个名为“sass”的文件夹(在config.rb中配置),其中有一个名为“header”的文件夹,在这个文件夹中有_header.scss文件。当我尝试将header部分导入screen.scss时,导入“header”和导入“header/_header”都不起作用。我也尝试了扩展-没有办法。如果我可以添加所有子文件夹,包括搜索路径,这将是伟大的!现在它似乎起作用了。我明白了,带partials的文件夹应该命名为partials?是否可以将其配置为其他名称?我在配置参考中完全找不到这方面的信息。文件夹名称可以是您想要的任何名称。用partials命名文件夹是一种非常方便的方法,可以使您的代码库变得更大。@lomaus好吧,谢谢,也许我做错了什么,但在将文件夹命名为“partials”之前,我无法使它工作。现在文件夹名不重要了,看起来像是我的错误。我不知道出了什么问题,但现在任何文件夹结构都可以正常工作,即使所有子文件夹都在saas中。谢谢希望我再也不会遇到这种奇怪的行为。