Twitter的引导:编译少花了很长时间(Twitter Bootstrap: less compi

2019-09-22 02:04发布

我正在写使用Twitter的引导一个简单的应用程序。 在我的主HTML文件,我有以下行:

<link rel="stylesheet/less" href="/static/less/style.less">
<script src="/static/js/libs/less-1.3.0.min.js"></script>

所以我每次刷新页面时,整个CSS获取生成。 这需要每次约15秒,所以它的等待页面加载疼痛。

我试着用SimpLESS生成CSS出较少的文件,但生成失败。 我会尽力拿到工作,但我也想知道是否我没有做错了什么?

我不喜欢的是,CSS是每次生成,即使我不改变文件少的事实。 有没有一种方法,使少莫名其妙缓存CSS? 或许有此问题其他替代解决方案?

Answer 1:

我建议你删除.LESS文件(S)的部分,看看具体的事情导致性能不佳。 它不应该是缓慢的。 我的猜测是,特定的混入或功能造成问题。

我也建议剖析JavaScript的(Chrome提供了一个很好的JS分析器),看看是否有什么明显的出现,像LESS相关功能缓慢且反复调用。

这里是我的,这可能是帮助你在未来的整体战略LESS。 我使用Visual Studio和ASP.Net,但你可以用各种环境下做到这一点。

  • 最重要的是,没有任何的JavaScript更少。 一切都做服务器端。

  • 在发展中,我通过我的申请文件.LESS 带点 HTTP处理程序,处理它们并处理缓存。 时不时地,缓存故障和我不得不重新启动我的本地Web服务器,但它不是一个大问题。 这使我能够进行实时修改我越来越看到他们通过刚刚刷新页面。 它也快。

例如: <link rel="stylesheet" href="foo.less" />

  • 对于生产,我使用一个构建行动编译我.LESS文件合并为一个CSS文件,并在页面直接引用CSS文件。 这一切都需要动态的方程。

例如: <link rel="stylesheet" href="final.css" />



Answer 2:

你需要每一个部分从引导? 因为,很多臃肿的代码。

尝试从主引导文件中禁用某些部分:

你需要的所有JavaScript的部分CSS?

你需要“代码”和“表”?

在“响应的实用程序”,可以注释掉很多,如果你不需要它。

让我告诉你我的设置,它在SASS,但原则保持不变:

// Compass utilities
@import "compass";

// Core variables and mixins
@import "includes/variables";
@import "includes/mixins";

// Reset
@import "includes/normalize";
@import "bootstrap/print";

// Core CSS
@import "includes/scaffolding";
@import "includes/type";
//@import "bootstrap/code";
@import "includes/grid";
//@import "bootstrap/tables";
@import "includes/forms";
@import "includes/buttons";

// Components: common
@import "includes/component-animations";
@import "bootstrap/glyphicons";
//@import "includes/dropdowns";
@import "includes/button-groups";
//@import "bootstrap/input-groups";
//@import "bootstrap/navs";
//@import "includes/navbar";
//@import "bootstrap/breadcrumbs";
//@import "bootstrap/pagination";
//@import "bootstrap/pager";
//@import "bootstrap/labels";
//@import "bootstrap/badges";
//@import "bootstrap/jumbotron";
//@import "bootstrap/thumbnails";
//@import "bootstrap/progress-bars";
//@import "bootstrap/media";
//@import "bootstrap/list-group";
//@import "bootstrap/panels";
//@import "bootstrap/wells";
@import "includes/close";

// Components w/ javascript
@import "includes/alerts";
@import "bootstrap/modals";
//@import "bootstrap/tooltip";
@import "includes/popovers";
//@import "includes/carousel";

// Utility classes
@import "bootstrap/utilities"; // Has to be last to override when necessary
@import "bootstrap/responsive-utilities";

//custom styling
@import "includes/customstyles";


文章来源: Twitter Bootstrap: less compilation taking a long time