Less 检索文件名并将其用作类选择器

Less 检索文件名并将其用作类选择器,less,Less,是否可以检索文件名并将其用作类选择器? 我有一个名为“colorScheme.less”的文件,在这个文件中,我有所有以“.colorScheme”为前缀的样式规则。 当我更改colorScheme.less的文件名时,如何替换此选择器?解决方法 可能有一种方法可以在LESS中使用javascript功能来获取文件名并执行您想要的操作;但是,这不是我在这里提供的解决方案,而是使用两个文件的解决方案 假设是LESS(1.3.3)的最新版本,您有一个colorScheme.LESS文件,然后是另一个

是否可以检索文件名并将其用作类选择器? 我有一个名为“colorScheme.less”的文件,在这个文件中,我有所有以“.colorScheme”为前缀的样式规则。 当我更改colorScheme.less的文件名时,如何替换此选择器?

解决方法 可能有一种方法可以在LESS中使用javascript功能来获取文件名并执行您想要的操作;但是,这不是我在这里提供的解决方案,而是使用两个文件的解决方案

假设是LESS(1.3.3)的最新版本,您有一个
colorScheme.LESS
文件,然后是另一个,我们称之为
loader.LESS
文件。loader.LESS中只有两行:

加载器。小于

@fileName: colorScheme;   
@import: "pathToFile/@{fileName}.less";
.@{fileName} p {color: red;}
.myClass-@{fileName} {color: blue;}
.@{fileName}-extended {color: yellow;}
现在,在您的
colorScheme.less
中,您已将其配置为使用
@fileName
变量,您正在
loader.less
文件中设置该变量。因此,我们有如下内容:

配色方案。较少

@fileName: colorScheme;   
@import: "pathToFile/@{fileName}.less";
.@{fileName} p {color: red;}
.myClass-@{fileName} {color: blue;}
.@{fileName}-extended {color: yellow;}
编译到

.colorScheme p {color: red;}
.myClass-colorScheme {color: blue;}
.colorScheme-extended {color: yellow;}
你的每个地方都有你的
.colorScheme
你把它改成
@{fileName}
。然后,你可以创建新的
加载程序
文件来改变你的类名(我相信,这是你想要做的部分事情)