Ich bin mir nicht ganz sicher, ob das, was ich versuche, möglich ist, aber ich habe so viel wie möglich gesucht und die folgende verschachtelte Schleife erstellt, um viele Varianten von hex zu erstellen Farben (anstatt die Variablennamen manuell einzugeben).SASS Dynamische Variablennamen und Nested Loops Fehler werfen
$colors: (
green: #006938,
pink: #9d1e65,
//...
);
$variations: (
30%, 50%, 70%,
);
@each $hex, $name in $colors {
@each $v in $variations {
#{$name}-#{$v}: lighten($hex, $v);
}
}
Allerdings bin ich auf meiner zweiten Schleife die folgende Störung zu erhalten:
$ gulp sass
[17:01:14] Using gulpfile ~/Sites/webcomponents/gulpfile.js
[17:01:14] Starting 'sass'...
events.js:163
throw er; // Unhandled 'error' event
^
Error: src/scss/app.scss
Error: Invalid CSS after "...n $variations {": expected 1 selector or at-rule, was "#{$name}-#{$v}: lig"
on line 72 of src/scss/app.scss
>> @each $v in $variations {
-----------------------------^
at options.error (/Users/martynbisset/Sites/webcomponents/node_modules/node-sass/lib/index.js:291:26)
Ist dies nicht die korrekte Syntax für eine verschachtelte Schleife? Wenn ich versuche, den Variablennamen dynamisch ohne die Schleife zu machen, bekomme ich auch einen Fehler. Sorry, irgendwie zwei Fragen in einem, aber ich würde mich über jeden Hinweis freuen, da ich mit SASS/SCSS ziemlich neu bin.
$name: "Hello";
$v: "70%";
#{$name}-#{$v}: lighten($hex, $v); // throws error too :(
Sie keine dynamischen Variablen in sass erstellen – karthick