如何在 Meteor 中动态更改 less 变量?
How do I dynamically change less variables in Meteor?
我在我的 Meteor 应用程序中加载了 Less 包,它工作正常。现在我需要允许我的应用程序的用户。覆盖我的 less 变量。我看过:
less.modifyVars({
'@canvas': '#5B83AD'
});
但是我的应用程序。是说 'less is not defined'。有人可以建议如何做到这一点吗?
Less 文件只能修改到编译成 css 文件的程度。当您部署 Meteor 应用程序时会发生这种情况。
无法在运行时更改 less 变量。您将不得不操纵 DOM 。 Jquery 可以通过定位您要更改的 DOM 元素来做到这一点。您必须使用 class.
标记它们
这种方法适合您:
<div class="canvas"></div>
然后您可以在运行时使用 Jquery:
编辑它
$(".canvas").css({background: '#5B83AD'});
编辑:我认为您所指的代码是来自 https://github.com/less/less.js/. There's a bit more info under 'Client side usage' on http://lesscss.org/
的 less.js
客户端文件
这与 Meteor less
包有点不同,Meteor 在开发过程中是专门的服务器端编译器。
如果您下载了 less.js
文件(来自 https://github.com/less/less.js/archive/master.zip)并将它放在您的 /client/compatiblity
文件夹中,您可以按照您希望的方式使用它。请记住,您可能必须删除 Meteor less
包,因为您想要原始加载它们,您还需要手动引用它们,因为一旦您删除 less
包,Meteor 将忽略 less。
我在我的 Meteor 应用程序中加载了 Less 包,它工作正常。现在我需要允许我的应用程序的用户。覆盖我的 less 变量。我看过:
less.modifyVars({
'@canvas': '#5B83AD'
});
但是我的应用程序。是说 'less is not defined'。有人可以建议如何做到这一点吗?
Less 文件只能修改到编译成 css 文件的程度。当您部署 Meteor 应用程序时会发生这种情况。
无法在运行时更改 less 变量。您将不得不操纵 DOM 。 Jquery 可以通过定位您要更改的 DOM 元素来做到这一点。您必须使用 class.
标记它们这种方法适合您:
<div class="canvas"></div>
然后您可以在运行时使用 Jquery:
编辑它$(".canvas").css({background: '#5B83AD'});
编辑:我认为您所指的代码是来自 https://github.com/less/less.js/. There's a bit more info under 'Client side usage' on http://lesscss.org/
的less.js
客户端文件
这与 Meteor less
包有点不同,Meteor 在开发过程中是专门的服务器端编译器。
如果您下载了 less.js
文件(来自 https://github.com/less/less.js/archive/master.zip)并将它放在您的 /client/compatiblity
文件夹中,您可以按照您希望的方式使用它。请记住,您可能必须删除 Meteor less
包,因为您想要原始加载它们,您还需要手动引用它们,因为一旦您删除 less
包,Meteor 将忽略 less。