文件a.less
#colorRules{
@colora: #red;
@colorb: #blue;
}
@ns: #colorRules();
文件b.less
#colorRules{
@colora: #dark;
@colorb: #232323;
}
@ns: #colorRules();
文件 index.less
`
@import a.less;
.color-factory(@obj){
@v-colora: "colora";
@v-colorb: "colorb";
color: @obj[@@v-colora];
background: @obj[@@v-colorb];
}
.box {
.color-factory(@ns);
&.theme-dark {
@import b.less;
.color-factory(@ns);
}
}
在index.less文件中,在.theme-dark调用.color-factory的时候一直报 Variable @colorb not found
颜色值为颜色名时前面不需要加 #
output
根据你的代码逻辑直接这样写就可以了: