Учебники

Расширение Sass

Вы можете расширить функциональность SASS, чтобы предоставлять пользователям различные типы функций и настроек. Чтобы использовать эти функции, пользователь должен знать Ruby.

Определение пользовательских функций SASS

Вы можете определить свои собственные функции SASS при использовании Ruby API. Вы можете добавить свои пользовательские функции, добавив их в методы Ruby, как показано в следующем коде —

module Sass::Script::Functions
   def reverse(string)
      assert_type string, :String
      Sass::Script::Value::String.new(string.value.reverse)
   end
   declare :reverse, [:string]
end

В коде, который вы могли видеть, функция объявляет, определяет имена аргументов для функции. Если произойдет сбой, он не примет никаких аргументов, даже если функция работает, и он также принимает произвольные аргументы ключевого слова. Вы можете получить значения Ruby с помощью средства доступа к значениям и получить доступ к цветным объектам с помощью rgb, red, green или blue .

Магазины кеша

SASS хранит кэш проанализированных документов, который можно использовать повторно без повторного анализа. SASS использует : cache_location для записи файлов кэша в файловой системе. Это ускоряет компиляцию файлов SASS, и если вы удалите кэшированные файлы, они будут сгенерированы снова при следующей компиляции. Вы можете определить свое собственное хранилище кеша, установив опцию : cache_store . Это позволит записывать файлы кэша в файловую систему или совместно использовать файлы кэша для процессов или машин ruby. SASS использует экземпляр подкласса Sass :: CacheStores :: Base для хранения и получения результатов кэша.

Таможенные импортеры

SASS использует @import для импорта файлов SCSS и SASS и передает пути в правило @import для поиска подходящего кода пути для указанных путей. Импортеры SASS используют файловую систему для загрузки кода и добавляют к загрузке, используя базу данных или другую схему именования файлов.

Один импортер может загружать один файл и может быть помещен в массив : load_paths вместе с путями файловой системы. При использовании @import SASS ищет загруженные пути, которые импортируют путь для импортера. Когда путь найден, используется импортированный файл. Пользователь может наследовать импортеров от Sass :: Importers :: Base .