less.js有没有编译完成的事件?
本文介绍了less.js有没有编译完成的事件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
最近项目改用less,但是发现less在编译完less文件之前会让body的宽度为0,导致很多用js获取宽高的代码获取到 的都是0,请问有没有一个编译完less的事件可以侦听?
对了,我是浏览器端编译的
这是测试页面,打开控制台可以看到body的宽度一开始是0
http://wdzj1314.com/mobile/public/lesstest.html
解决方案
什么叫编译完之前让body宽度为0?你在哪里编译,用什么工具编译的?
修正内容:
好吧,我简单谈下:
首先,运行时编译less是官方强烈不推荐的方式,这也是为什么关于less.js
的API文档都很少,因为真的太费时间。编译的操作应该在部署前完成,应用部署时就直接给css了。
其次,你说的那个编译完提醒的功能,目前真没有,我看到有人提了一个PR,因为没文档,所以我不敢保证他一定work,但应该是已经release了,用法如下:
less.registerStylesheets().then(
function () {
// The new stylesheets have been loaded.
// Now refresh() or modifyVars() to parse the changes.
less.refresh();
}
);
我把相关issues也给你列出来好了,方便你自己找How to tell when less is done processing,Method to scan for and register stylesheets
这篇关于less.js有没有编译完成的事件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文