较少的递归循环:找不到匹配的定义

时间:2013-02-01 23:24:34

标签: loops recursion less

我正在创建一个mixin,用于在LESS中生成网格:

/*Grid*/
@num-cols: 12;
@rowWidth: 100%;
@container-lateral-padding: 1em;
@col-margin-right: 3.8%;
@col-unit: (@rowWidth + @col-margin-right) / @num-cols;
@col-identifier: "col";
@col-identifier-nums: false;
@col-identifier-names: true;

@column-selector-number-at-end: false;
@column-selector-number-at-beginning: true;

.setGrid(@index) when (@index > 1), (@column-selector-number-at-end == false) {
    (~".@{index}-@{colNotation}") {
        width: @col-unit * @index - @col-margin-right;
    }
    .setGrid(@index - 1);
}
.setGrid(0) {}
.setGrid(@num-cols);

但我会得到错误:

  

找不到.setGrid()

的匹配定义

我在这里做错了什么?

1 个答案:

答案 0 :(得分:1)

您的问题就在这里:when (@index > 1)。您没有值为1的情况(因此“无匹配定义”错误)。所以你需要when (@index >= 1)