less.js没有关注'toCSS'的方法

时间:2012-02-08 08:17:47

标签: javascript less

我在localhost(在Windows上)使用less.js(版本1.2.1),当我在控制台中使用less.watch()时,我不断收到此错误:

less.js:9 Uncaught TypeError: Object #<HTMLLinkElement> has no method 'toCSS'

我找到了解决这个问题的答案,但没有运气。无论如何修复此错误? less.watch()确实有效,但它也很慢,每一秒我都会收到错误。

无论如何要解决这个问题?

html中确实没有任何内容,这里是我设置的方式。我做错了吗?

<link rel="stylesheet/less" type="text/css" href="css/styles.less">

<script src="js/less.js" type="text/javascript"></script>

Firebug控制台:

b.toCSS is not a function
[Break On This Error]   

b && r(b.toCSS(), d, e.lastModified)

1 个答案:

答案 0 :(得分:4)

开发版版本为https://github.com/cloudhead/less.js/blob/master/dist/less-1.2.1.js

相关部分是:

if (less.env === 'development') {
    less.optimization = 0;

    if (/!watch/.test(location.hash)) {
        less.watch();
    }
    less.watchTimer = setInterval(function () {
        if (less.watchMode) {
            loadStyleSheets(function (e, root, _, sheet, env) {
                if (root) {
                    createCSS(root.toCSS(), sheet, env.lastModified);
                }
            });
        }
    }, less.poll);
} else {
    less.optimization = 3;
}

在以下部分:

if (root) {
    createCSS(root.toCSS(), sheet, env.lastModified);
}

变化:

if (root) {

为:

if (root && sheet) {

然后重新缩小(如果需要)并使用新文件。