Sass 擴(kuò)展

2018-12-28 17:13 更新

您可以擴(kuò)展Sass的功能,為用戶(hù)提供不同類(lèi)型的功能和自定義。要使用這些功能,用戶(hù)應(yīng)該有Ruby的知識(shí)。

定義自定義Sass函數(shù)

您可以在使用Ruby API時(shí)定義自己的Sass函數(shù)。您可以通過(guò)將自定義函數(shù)添加到Ruby方法來(lái)添加自定義函數(shù),如下面的代碼所示:

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

在代碼中你可以看到,F(xiàn)unctions.declare 指定函數(shù)的參數(shù)名稱(chēng)。如果失敗,它將不接受任何參數(shù),即使函數(shù)是工作,它也采取任意關(guān)鍵字參數(shù)。您可以使用 value 存取器獲取Ruby值,并使用 rgb,紅色,綠色 藍(lán)色。

緩存存儲(chǔ)

Sass存儲(chǔ)解析的文檔的緩存,可以重新使用而無(wú)需再次解析。Sass使用:cache_location 在文件系統(tǒng)上寫(xiě)入高速緩存文件。它可以更快地編譯Sass文件,如果刪除緩存文件,下次編譯時(shí)將再次生成它們。您可以通過(guò)設(shè)置:cache_store 選項(xiàng)來(lái)定義自己的緩存存儲(chǔ)。這將寫(xiě)入文件系統(tǒng)上的緩存文件或共享緩存文件到Ruby進(jìn)程或機(jī)器。Sass使用 Sass :: CacheStores :: Base 子類(lèi)的實(shí)例來(lái)存儲(chǔ)和檢索緩存結(jié)果。

自定義導(dǎo)入

Sass使用 @import 導(dǎo)入SCSS和Sass文件,并將路徑傳遞到 @import 規(guī)則,以便為指定的路徑找到合適的路徑代碼。Sass導(dǎo)入器使用文件系統(tǒng)加載代碼并使用數(shù)據(jù)庫(kù)或不同的文件命名方案添加到加載。

單個(gè)導(dǎo)入器可以進(jìn)行單個(gè)文件加載,并且可以與文件系統(tǒng)的路徑一起放置在:load_paths 數(shù)組中。使用 @import 時(shí),Sass尋找導(dǎo)入導(dǎo)入器路徑的加載路徑。找到路徑時(shí),將使用導(dǎo)入的文件。用戶(hù)可以從 Sass :: Importers :: Base 繼承導(dǎo)入程序。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)