减:不能在每个内部使用Map

时间:2019-02-12 16:18:09

标签: css less

我有以下内容:

@threshold:{
  a:50;
  b:200;
};

@themes:{
  a:red;
  b:blue;
};

.mymixin(@name,@color,@thrshld){
  //do-something
}

each(@themes,{
  .mymixin(@key,@value,@threshold[@key]);
});

通过运行代码,会发生以下错误:

  

RuntimeError:错误评估函数each:找不到变量@key ...

我正在使用v3.9.0

如何在每个功能中使用地图?

1 个答案:

答案 0 :(得分:1)

您需要使用@map[$@property]语法来评估@map[@property]的值

.mymixin(@name, @color, @thrshld) {
  .theme-@{name} {
    color: @color;
    width: @thrshld;
  }
}

@threshold: {
  a: 50;
  b: 200;
};

@themes: {
  a: red;
  b: blue;
};

each(@themes, {
  .mymixin(@key, @value, @threshold[$@key])
})