Je me demande s'il existe un moyen de charger une seule feuille less après un chargement de page. This question a une réponse qui explique comment recharger toutes les feuilles, mais pour mon cas d'utilisation les feuilles existantes n'ont jamais de dépendances sur les feuilles nouvellement chargées, et il serait bon d'ajouter simplement la feuille paresseusement. Je pense quelque chose commeless.js chargement feuille paresseux
less.sheets.push(mySheet);
less.loadStyleSheet(mySheet);
peut représenter une API possible? Cheers,
Colin
Mise à jour le 3 décembre 2010:
J'ai essayé la solution de Livingston Samuel de la base de code de less.js, et alors qu'il fonctionne, il ne semble pas reconnaître les définitions dans feuilles de style déjà chargées. Voici mes exemples de fichiers
a. index.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Simple</title>
<link rel="stylesheet/less" href="/static/less/style.less" id="abc123"/>
<script src="/static/js/less-1.0.40.js"></script>
</head>
<body>
<div id="container">
<div>Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet.</div>
</div>
<div id="abc"><div>Bingo</div></div>
</body>
<script>
console.log("loading new sheet");
less.loadStyleSheet("/static/less/style2.less", function() {
console.log("Loaded!");
});
console.log("called");
</script>
</html>
b. style.less
@primary_color: green;
.rounded(@radius: 5px) {
-moz-border-radius: @radius;
-webkit-border-radius: @radius;
border-radius: @radius;
}
#container {
background: @primary_color;
.rounded(5px);
div {
color: red;
}
}
c. style2.less
#abc {
background: @primary_color;
.rounded(10px);
div {
margin: 2px;
color: blue;
}
}
Ainsi, la seconde feuille de style ne se charge paresseusement, mais il a l'erreur d'analyse suivante dans style2.less
".rounded est indéfini"
.rounded est défini style.less , et puisque je n'ai pas déchargé cette feuille, je pensais qu'elle devrait toujours être disponible pour le compilateur dans l'environnement actuel.
Pour le dire autrement, nous ne voulons pas commencer à nouveau, ou à décharger des définitions existantes, mais construire sur les styles déjà chargés. Merci,
Colin
Pour référence pour d'autres: moins = http://lesscss.org/ – Orbling