2016-08-09 1 views
0

docによると、私たちはミックスインを呼び出すために@includeを使用していますが、私のユースケースでは、私はこのようなものがあります(components/_color.scssに定義されている)のmixin colorについてsass:mixinを呼び出すには、いつ@includeが必要ですか?

@import "components/color"; 

/*NavBar*/ 

#g-navigation{background:linear-gradient(to top,rgba(0,0,0,0), color(blue,base) 80%) !important} 

を、私はしないでください@includeを使用する必要があり、私は

#g-navigation{background:linear-gradient(to top,rgba(0,0,0,0), @include color(blue,base) 80%) !important} 

をすれば、実際にミックスインが実行されず、出力ファイルにあるようコンパイラはちょうど@includeを保ちます。それでなぜこれは?そして正確にミックスインにはいつ@includeが必要ですか?

答えて

0

background: linear-gradient(to right, rgba(255,0,0,0), rgba(255,0,0,1)); の場合は、値だけでなく、値を挿入するために使用されるmixinを与えます。このためにSASS変数を使用することができます。

0

@includeはミックスインであり、 color(...)のような何かがそれなしで使われているのを見ると、それは実際には関数です。 Mixinsは任意のコンテンツ(通常は複数のルール宣言)を返すことができますが、関数は値を返します。したがって、宣言に:の後に使用される関数と、スタンドアロンの@includeステートメントとして使用される関数が表示されます。

関連する問題