Rozszerzanie Sassa

Możesz rozszerzyć funkcjonalność SASS, aby zapewnić użytkownikom różne typy funkcji i dostosowań. Aby skorzystać z tych funkcji, użytkownik powinien mieć wiedzę o Rubim.

Definiowanie niestandardowych funkcji SASS

Możesz zdefiniować własne funkcje SASS podczas korzystania z Ruby API. Możesz dodać własne funkcje, dodając je do metod Ruby, jak pokazano w poniższym kodzie -

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

W kodzie, który mogłeś zobaczyć, funkcja Function, deklaruj, określa nazwy argumentów funkcji. Jeśli się nie powiedzie, nie przyjmie żadnych argumentów, nawet jeśli funkcja działa, a także przyjmuje dowolne argumenty słów kluczowych. Możesz uzyskać wartości Rubiego za pomocą metody dostępu do wartości i uzyskać dostęp do obiektów koloru za pomocą rgb, czerwonego, zielonego lub niebieskiego .

Magazyny pamięci podręcznej

SASS przechowuje pamięć podręczną przeanalizowanych dokumentów, których można użyć ponownie bez ponownego analizowania. SASS używa:cache_locationdo zapisywania plików pamięci podręcznej w systemie plików. Przyspiesza to kompilację plików SASS, a jeśli usuniesz pliki z pamięci podręcznej, zostaną one wygenerowane ponownie podczas następnej kompilacji. Możesz zdefiniować własny magazyn pamięci podręcznej, ustawiając plik:cache_storeopcja. Spowoduje to zapisanie plików pamięci podręcznej w systemie plików lub udostępnienie plików pamięci podręcznej procesom lub maszynom Ruby. SASS używa instancji podklasy Sass :: CacheStores :: Base do przechowywania i pobierania wyników z pamięci podręcznej.

Importerzy niestandardowi

SASS używa @import do importowania plików SCSS i SASS i przekazuje ścieżki do reguły @import, aby znaleźć odpowiedni kod ścieżki dla określonych ścieżek. Importerzy SASS używają systemu plików do wczytywania kodu i dodawania go do ładowania za pomocą bazy danych lub innego schematu nazewnictwa plików.

Pojedynczy importer może pobierać pojedynczy plik i może być umieszczony w tablicy : load_paths wraz ze ścieżkami systemu plików. Używając @import , SASS szuka załadowanych ścieżek, które importują ścieżkę dla importera. Po znalezieniu ścieżki używany jest importowany plik. Użytkownik może dziedziczyć importerów zSass::Importers::Base.