mapv (_base.scscs)

Tipo: Function

Versión: 2.x.x

Obtiene un valor de un map y devuelve un fallback cuando la clave no existe.

También permite definir alias para una misma opción, lo que simplifica la captura de atributos en mixins y funciones con sintaxis map.

Interface

@function mapv($map, $key, $value);

Parámetros secuenciales

Parámetro Tipo Default Descripción
map Map - Define el mapa desde el que se intentará leer el valor.
key String | List - Define la clave principal o la lista de claves alias que se evaluarán en orden.
value Any - Define el valor de respaldo que se devolverá si ninguna clave existe en el mapa.

La creación de alias se hace pasando una lista de claves en el segundo parámetro. Por ejemplo, mapv($attr, (align, a), left) primero intenta leer align; si no existe, intenta leer a; y si ninguna está definida, devuelve left. La precedencia sigue exactamente el orden en que se escriben las claves en la lista.

Usar mapv en mixins y funciones tiene dos ventajas principales: reduce código repetido al centralizar la lectura de atributos con fallback, y permite ofrecer una API más flexible con nombres principales y alias cortos sin duplicar lógica en cada captura. Eso facilita mantener firmas más limpias y hace más consistente la sintaxis map en todo SISASS.

Ejemplo

BG: black, Color: white
BG: orange, Color: maroon

            

            
<div class="fn_mapv">
                    <div class="box">Box con background-color y color</div>
                    <div class="box box_default_bg">Box con color y background-color por defecto</div>
                </div>