Phi*_*ipp 5 javascript variables parsing client-side less
我使用less.js(1.3.0)来解析客户端的css.在解析器的回调中,我想获得每个变量的值.我试了以下没有成功.
var data = "@colour: red; #example { background-color: @colour; }",
parser = new less.Parser({});
parser.parse(data, function (error, root) {
console.log( root.toCSS() );
var varsDef = root.variables();
for (k in varsDef) {
console.log(varsDef[k]);
// how to get the value for the var?
//not working
console.log(varsDef[k].eval());
//not working
console.log(varsDef[k].toCSS());
//is an object but looking for a string value
console.log(varsDef[k].value);
//returns an empty string
console.log(varsDef[k].value.toCSS());
}
});
Run Code Online (Sandbox Code Playgroud)
eval()和toCSS()都没有给我任何结果.我不明白解析器的内部运作方式.每个变量对象都有一个变量属性varsDef [k] .value,它是一个对象本身.但我只需要变量的字符串值.
有谁知道如何将变量的值作为字符串?
varsDef[k].value.toCSS()
Run Code Online (Sandbox Code Playgroud)
应该是值
varsDef[k].name
Run Code Online (Sandbox Code Playgroud)
应该是变量名
varsDef[k].toCSS()
Run Code Online (Sandbox Code Playgroud)
不返回任何内容,因为它是一个变量 - 在 CSS 中变量不输出。