我可以在不同来源的较少文件中编译吗?

时间:2014-05-09 18:55:21

标签: css twitter-bootstrap compilation client less

好的,所以我为一家使用Bootstrap而不是css的公司工作。现在,对于每个客户,他们包括我们所有“核心”较少的文件,这些文件不会随着仅为该客户的较少文件而改变。我们希望清理它并拥有“核心”文件的中心位置,然后在每个客户端文件夹中,我们只有2-3个文件仅供客户使用。

可以从多个位置自举编译吗?

这是我们现在拥有的和我们想要的结构。

我们现在拥有的是什么:

客户1:

  • 客户少文件
  • “核心”少文件

客户2:

  • 客户少文件
  • “核心”少文件

客户3:

  • 客户少文件
  • “核心”少文件

我们想要什么:

“核心”减少文件

客户1:

  • 客户少文件

客户2:

  • 客户少文件

客户3:

  • 客户少文件

希望这是有道理的。感谢

1 个答案:

答案 0 :(得分:0)

我希望您的问题是关于客户端编译少量代码(请参阅:http://lesscss.org/#client-side-usage)。

使用less.js客户端编译器时,您可以包含多个文件:

<link rel="stylesheet/less" type="text/css" href="core.less">
<link rel="stylesheet/less" type="text/css" href="client.less">
<script src="js/less.js" type="text/javascript"></script>

在上述情况下将core.less移动到其他域时:

<link rel="stylesheet/less" type="text/css" href="http://yourdomain.com/core.less">

您将在第一个问题中遇到跨域问题。这可以通过启用CORS来修复,请参阅:http://enable-cors.org/。在已安装core.less的域上,服务器应发送Access-Control-Allow-Origin: *标头。

less.js使用XMLHttpRequests加载较少的文件,这些文件支持大多数现代浏览器的CORS,请参阅http://caniuse.com/#search=cors。有关详细信息,请访问http://www.html5rocks.com/en/tutorials/cors/

请注意,less.js编译器在不同的范围内编译彼此独立的每个文件。所以本例中的client.less文件不能使用core.less中定义的mixins和variable。

另请注意,由于性能问题,您在大多数情况下不应使用客户端编译进行生产。

相关问题