如何将 less.js 解析器结果提取为对象,而不是使用 .toCSS() 编译 CSS?

Lil*_*tFX 2 less

我想知道是否有办法将较少的解析结果作为对象而不是编译后的 CSS 获得?在使用示例中,我们有:

var parser = new(less.Parser);

parser.parse('.class { width: (1 + 1) }', function (err, tree) {
    if (err) { return console.error(err) }
    console.log(tree.toCSS());
});
Run Code Online (Sandbox Code Playgroud)

这很好,但我需要使用 JavaScript 中设置的“原始”规则做一些工作。如何访问设置为对象的规则。例如:

var rules_set = {
selector:'xxxxxxx'
property1: 'xcv'
.
.
.
propertyX: ''
}
Run Code Online (Sandbox Code Playgroud)

提前致谢!

Dwa*_*yne 5

上面的示例因“无法读取未定义的属性 'cntents'”错误而失败。这是似乎适用于 LESS 2.5.0 的代码:

var parser = new(less.Parser)({}, {contents: {}}, {
    relativeUrls: true,
    rootpath: "/",
    filename: 'main.less'
});
parser.parse('x {y: url("../z.png")}', function (e, tree) {
   console.log(tree);
});
Run Code Online (Sandbox Code Playgroud)