首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态更改dotless参数

动态更改dotless参数
EN

Stack Overflow用户
提问于 2012-05-29 18:50:51
回答 2查看 1.3K关注 0票数 5

我想将.less参数存储在数据库中,一个示例用例可能是每个用户的颜色根据他或她的喜好进行更改。

我认为最好的方法是解析所有的.less文件以获得参数,然后用户可以设置参数,这些参数将针对用户保存在数据库中。当请求less文件时,处理程序重载可以向DB查询参数。然后,处理程序可以输出设置了参数的css。

问题:-如何获取.less文件并获取参数列表?-如何获取.less文件参数数组(键值对)并输出css?

所有这些都使用了无点框架。

EN

回答 2

Stack Overflow用户

发布于 2012-06-06 20:59:14

可能是一个延迟的回复,但我们做了一些与您的要求类似的事情,我们根据存储在数据库中的用户自定义颜色。

我们的解决方案是将自定义代码添加到dotless的源代码中,我相信可以在这里找到https://github.com/dotless/dotless

因此,在解析过程中,它只是将字符串替换为我们想要替换的部分。这种方法的唯一缺点是获得新的无点动态链接库的更新版本,我们每次都需要重新合并源代码。

编辑这里是一个示例代码片段:

代码语言:javascript
复制
dotless.Core.Utils.HslColor hslcolor = dotless.Core.Utils.HslColor.FromRgbColor( new dotless.Core.Parser.Tree.Color( "187AAB" );
                hslcolor.Lightness = 0.93;
                var hexString = '#' + ( hslcolor.ToRgbColor().RGB.Select( i => ( ( int )i ).ToString( "X2" ) ).Aggregate( ( a, b ) => a + b ) ).ToLowerInvariant();
                var resultColor = hexString;
票数 3
EN

Stack Overflow用户

发布于 2012-05-30 00:11:02

如果你是用.Net做的,那么dotless允许你指定一个插件,它可以作为访问者在评估之前运行。这将访问不太抽象的语法树中的所有节点,因此可以很容易地确定所有变量。Dotless还允许指定patamteres,允许您生成变量文件。

但那是奥特..您可能希望考虑将数据库中的所有变量存储为您的“主副本”,并避免解析较少的变量。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10797661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档