- objective-c - iOS 5 : Can you override UIAppearance customisations in specific classes?
- iphone - 如何将 CGFontRef 转换为 UIFont?
- ios - 以编程方式关闭标记的信息窗口 google maps iOS
- ios - Xcode 5 - 尝试验证存档时出现 "No application records were found"
假设我有这个 mixin:
.loop-strings("A, B, C", "1, 2, 3", "X, Y, Z";);
这样实现:
.loop-strings(@list, @index: 1) when (isstring(extract(@list, @index))) {
@currentMember: extract(@list, @index);
.do-something-with(@currentMember);
.loop-strings(@list, (@index + 1)); /* loop the next member */
}
.do-something-with(...) {
@args1 : e(@arguments);
@args2 : A, B, C;
args1: @args1;
args2: @args2;
extract-args1-2: extract(@args1, 2);
extract-args2-2: extract(@args2, 2);
}
结果:
args1: A, B, C;
extract-args1-2: extract(A, B, C, 2);
args1: 1, 2, 3;
extract-args1-2: extract(1, 2, 3, 2);
args1: X, Y, Z;
args2: A, B, C;
extract-args1-2: extract(X, Y, Z, 2);
extract-args2-2: B;
这些接缝是 @foo:e("A, B, C");
或 @foo:~"A, B, C";
和 @foo:A, B, C;
我似乎不能使用 extract(@foo, 2);
除非它被定义为一个对象列表。
有没有办法将转义字符串转换为对象列表
最佳答案
It seams to be a difference between
e("A, B, C")
or~"A, B, C"
andA, B, C
是的,e("A, B, C")
和 ~"A, B, C"
都创建了所谓的“匿名值”类型,即从未被视为有意义的类型(它不是列表,不是数字,甚至不是字符串)。基本上,转义值就像“别碰我”或“我知道我在做什么!”东西,它们只是“按原样”输出,编译器从不试图理解里面的内容。这基本上就是escaped values到底是什么用于:“打印”出编译器无法理解的内容。
一般来说,您可以同时使用逗号和空格作为列表中的值分隔符。例如,您可以使用 .loop-strings(A B C, 1 2 3, X Y Z;);
(二维列表作为单个参数,因此使用多参数混合您甚至可以获得一棵树维列表在一行中)。您是否有任何特殊原因需要使用引号和/或转义值?例如你可以这样写:
test {
.loop-lists(A, B, C; 1, 2, 3; X, Y, Z);
}
.loop-lists(@lists...) {
.loop(length(@lists));
.loop(@i) when (@i > 0) {
.loop((@i - 1));
.do-something-with(extract(@lists, @i));
}
}
.do-something-with(@list) {
v1: extract(@list, 1);
v2: extract(@list, 2);
v3: extract(@list, 3);
}
extract(A, B, C, 2);
目前这是不正确的 extract
语法,extract
只接受两个参数,所以你可以这样写:
extract(A B C, 2);
或如:
@list: A, B, C;
extract(@list, 2);
这是一个带有几个附加通用提示的示例:
test {
.do-something(A B C, 1 2 3, X Y Z; foo bar, baz; banana);
}
.do-something(@p1, @p2, @p3) {
args1: @arguments; // 3D list
args2: extract(@arguments, 1); // 2D list: A B C, 1 2 3, X Y Z
args3: extract(extract(@arguments, 1), 1); // 1D list: A B C
args4: extract(extract(extract(@arguments, 1), 1), 1); // single value: A
p1- : @p1; // A B C, 1 2 3, X Y Z
p1-1: extract(@p1, 1); // A B C
p1-3: extract(@p1, 3); // X Y Z
@p2-1: extract(@p2, 1); // foo bar
p2-1: @p2-1; // foo bar
p2-1-2: extract(@p2-1, 2); // bar
p2-2: extract(@p2, 2); // baz
p3- : @p3; // banana
p3-1: extract(@p3, 1); // banana
// etc.
quoted-p2: "@{p2}"; // if you need a quoted string do it in reverse (i.e. non-quoted list to a quoted string)
}
关于css - Less 列表作为 mixin 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21010520/
我在尝试使用 WebStorm LESS File Watcher 时遇到此错误 /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/
我有一个带有以下结构的 .less 样式表: @width:600; .some-style { width:@{width}px; } 这给出了以下错误: Expected '}' on l
说我有以下结构 /node_modules /src /components /component1 /style /style.less
我想使用灰度函数,但 LESS 一直抛出此错误,我没有看到灰度的 mixin 或如何使用它。有什么帮助吗? Error 148 Expected color in function 'graysc
我的文件较少,如下面的目录结构 vendor/includes/file1.less vendor/includes/file1.less vendor/includes/file1
如果我在 LESS 中定义以下嵌套样式: .nav-bar { .navbar-brand { background: #000; } } .nav-bar {
我正在尝试设置一个使用 lein-less 插件编译 .less 文件的 clojurescript 项目。我应该说我是 clojurescript 的新手。问题是它似乎没有运行。它在我运行“lein
有人会这样使用“less”: var less = require('less'); less.render('.class { width: (1 + 1) }', function (e, css
我正在尝试在一个新元素中测试 less.js。我 100% 确定 javascript 文件加载正常,但我的 css 文件夹中的 less 文件一直出现此错误。我打算在启动之前使用 less.app
我有以下更少: .container { .column, .columns { .one& { width: 40px; }
这是一个代码(test.less): body { padding: 50px; } body { padding: 20px; } 为什么在编译成 CSS 后我有这个: body {
我有一个变量 @index我想输出一个选择器,以便当 @index是 3 , 选择器是 [data-sth="3"] . 更长的例子: @index: 3; /* selector here */ {
假设我有一个使用 Less 定义的样式: ul.unstyled, ol.unstyled { margin-left: 0; list-style: none; } 稍后,我想重新使用 un
假设我有以下 Less 设置: .box { border: 1px solid #333; &.error { background-color: Red; } } 如果我想
我有一个 common.less文件,它为不同的皮肤实现了基本的 CSS: @textColor: black; @iconSize: 16px; .container: { color: @
我创建了使用 LESS 功能切换主题的代码。不幸的是,LESS 文件不会在浏览器中编译。如何在浏览器中编译 LESS 文件? 最佳答案 这是一张documentation : Client-side
我想使用 less 来定位类中的特定元素。 在这种情况下,我想定位类 button 的元素,但在此范围内我想定位一个 anchor 标签 a . 目前我有: .button { /* lots
我正在努力做某事。我的项目是这样的: /app /assets /components /stylesheets /less
我目前正在一个项目中使用 Twitter Bootstrap,包括 LESS 文件并使用我们编写的一些附加 LESS 代码进行编译。 最新版本意味着我们需要覆盖一些 Bootstrap LESS 变量
我有这个更少的代码,这工作得很好。我只是想在 less cli 编译它时节省一些空间。 .secondary-content { background: #ffcc80; color:
我是一名优秀的程序员,十分优秀!