От автора: вы можете расширить функционал SASS, чтобы предоставить пользователям дополнительные возможности и настройки. Чтобы использовать эти функции, пользователь должен знать Ruby.
Определение пользовательских функций SASS
Вы можете определить собственные функции SASS, используя Ruby API. Пользовательские функции можно ввести, добавив их в методы Ruby, как показано в приведенном ниже коде:
1 2 3 4 5 6 7 |
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, используя атрибут value, доступ к объектам цветов осуществляется с помощью ключевых слов 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.
Источник: //www.tutorialspoint.com/
Редакция: Команда webformyself.