可以让LESS解析器在链接标记中的多个LESS文件之间创建共享作用域吗?

可以让LESS解析器在链接标记中的多个LESS文件之间创建共享作用域吗?,less,Less,对不起,问题措辞太糟糕了,让我解释一下 对于我正在处理的项目,我希望管理服务器上我的LESS文件的各种依赖关系。由于项目的结构方式(不同的组件以不同的方式进行符号链接),仅使用@import来构建依赖项等限制更大 理想情况下,我只想在该部分列出所需较少的文件列表,例如: <link rel='stylesheet/less' href='/path/to/some/file.less' type='text/css' media='all' /> <link rel='styl

对不起,问题措辞太糟糕了,让我解释一下

对于我正在处理的项目,我希望管理服务器上我的LESS文件的各种依赖关系。由于项目的结构方式(不同的组件以不同的方式进行符号链接),仅使用@import来构建依赖项等限制更大

理想情况下,我只想在该部分列出所需较少的文件列表,例如:

<link rel='stylesheet/less' href='/path/to/some/file.less' type='text/css' media='all' />
<link rel='stylesheet/less' href='/path/to/some/other-file.less' type='text/css' media='all' />

然后,例如,如果在file.less中定义了变量或mixin,我希望能够在other-file.less中使用它

据我所知,这是行不通的。每个LESS文件似乎都存在于它自己的范围内,而一个文件中的变量等在另一个文件中不可用

这是正确的吗?范围是否完全限于单个文件和其中的任何@imports?我有理由肯定是这样,但不是完全如此

目前,我的解决方案比我希望的要复杂:我正在服务器端构建依赖项,然后将它们快速转换成一个巨大的、单一的development.less文件。(请注意,出于生产目的,我有一个编译和缩小less的构建过程,这样我就可以直接提供CSS)

我已经在较少的源代码中查看了browser.js以寻找线索,但我想首先在这里问一下这是否可能,甚至是可取的。我对这种行为感到有点惊讶,因为它不是多个javascript文件和内联代码的工作方式。

为什么它不工作 更少文件的每个
都会预处理该文件,并将其解析为一个简单的CSS输出。html本身的“作用域”中没有任何变量或内容,因此第二个
无法使用。这就是为什么一个人看不懂另一个人

可能的帮助 小于1.5可以将
@import
作为参考(因此不会将直接输出编译到文件中)。因此,您的
其他文件.less
可以执行以下操作:

@import (reference) file.less;
获取它所需的依赖项。

为什么它不起作用 更少文件的每个
都会预处理该文件,并将其解析为一个简单的CSS输出。html本身的“作用域”中没有任何变量或内容,因此第二个
无法使用。这就是为什么一个人看不懂另一个人

可能的帮助 小于1.5可以将
@import
作为参考(因此不会将直接输出编译到文件中)。因此,您的
其他文件.less
可以执行以下操作:

@import (reference) file.less;

获取所需的依赖项。

如果您添加了其他标记,会有所帮助。@Wug有什么建议吗?这几乎只是一个关于更少的CSS预处理器及其实现方式的问题。似乎与任何其他标记无关。可能是范围和依赖项?我对这个问题了解得不够,但我想先谈谈为什么使用两个文件而不是一个?这是一个较少的请求,但已经提前表明这是不可能的。。他们必须有一个文件导入(顺序很重要)。如果您添加了其他标记,这会有所帮助。@Wug有什么建议吗?这几乎只是一个关于更少的CSS预处理器及其实现方式的问题。似乎与任何其他标记无关。可能是范围和依赖项?我对这个问题了解得不够,但我想先谈谈为什么使用两个文件而不是一个?这是一个较少的请求,但已经提前表明这是不可能的。。他们必须有一个文件导入(在顺序重要的地方)。