我正在尝试让RequireJS 的 Guy Bedfords less 插件将一些常见文件拉入每个/所有后续的 less 文件中。目标是保持模块特定的较少文件分开,但每个都引入一些常见的资产,如变量和混合。
不过,到目前为止,该插件似乎是自己解析每个较少的文件。
例如,如果我简单地说:
// variables.less
@red: #ff0000;
// styles.less
body {
background-color:@red;
}
// main.js
define(['less!variables', 'less!styles'], function() {
...
});
variables.less 和styles.less 都被解析了,但是styles.less 在variables.less 中看不到@red,并且我收到一个javascript 错误,提示styles.less 解析失败。
查看 git 上的示例,它看起来像分离依赖项(强制它们首先加载?)应该将它们拉入:
// common.js
define(['less!variables'], function() {
return {};
});
// main.js
define(['common', 'less!styles'], function() {
...
});
但这给了我相同的结果;一个较少的错误说 styles.less 没有正确解析。
我尝试了一些“技巧”,比如在styles.less中使用@import来引入variables.less,但似乎虽然require-less会规范化大多数url,但它不会规范化@imports,所以现在variables.less必须绝对引用,这不是我想要的。
有谁知道我在这里做错了什么?
目标是在开发中通过 RequireJS 加载和解析更少的文件,使用与 r.js 良好集成的东西将所有更少的文件预编译为 css 以进行部署。虽然不需要插件看起来很棒,但不能使用变量或混合是一个非常严重的错误。还有其他选择吗?
谢谢。