You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
... then you get the error: wrong number of arguments for .mixin (1 for 2)
Expected behavior:
I would expect this to still match the first mixin by arity.
Something else that's unexpected is that you can't match the second mixin by arity by doing this:
.box {
.mixin(@b: 3);
}
However, the Less docs don't sufficiently explain (IMO) what the expected behavior should be in that case. Technically, there is a mixin that matches, but it's not clear from the Less docs if overloading mixins means you can "pass over" mixins with only one named argument. I'm really not sure what the behavior should be because the docs don't say, so I'd welcome opinions.
Environment information:
Latest Less / Node 16
The text was updated successfully, but these errors were encountered:
Always have the same named parameters (yet it doesn't say this) - i.e. you can add named parameters to further mixins - this seems to be implied because mixin matches fail if the name isn't found.
Cannot use named parameters unless all mixins of the same name contain that named parameter? This to me is somewhat counter-intuitive since the positional arguments can be optional / matched by arity, therefore I somewhat intuited that named args would match mixins by named parameter, but that seems to fail.
To reproduce:
In the docs, it describes how mixins match on arity (number of arguments).
That is, you can do this:
This will produce:
However, if you add a default value to the first parameter, like so:
... then you get the error:
wrong number of arguments for .mixin (1 for 2)
Expected behavior:
I would expect this to still match the first mixin by arity.
Something else that's unexpected is that you can't match the second mixin by arity by doing this:
However, the Less docs don't sufficiently explain (IMO) what the expected behavior should be in that case. Technically, there is a mixin that matches, but it's not clear from the Less docs if overloading mixins means you can "pass over" mixins with only one named argument. I'm really not sure what the behavior should be because the docs don't say, so I'd welcome opinions.
Environment information:
Latest Less / Node 16
The text was updated successfully, but these errors were encountered: