qrac / musubii

Simple CSS Framework for JP
https://musubii.qranoko.jp
150 stars 6 forks source link

SCSSの単純化 #240

Closed qrac closed 4 years ago

qrac commented 4 years ago

主にv7.0.0-alpha版でSCSSが複雑になりすぎたため、単純化する。次期Sassのモジュールシステムも視野に。

追いづらい変数を減らす

変数の値を探しやすい構成に変える。特にnode_modulesに分離している部分は追いづらいので内包して完結させる。

追いづらい構文を減らす

パターン変数からeachする構文などは、ぱっと見どのようなコードが生成されるのか分かりづらい。時間が経つと作者自身も思い出せなくなる。冗長だけど展開して書き直す。

パターン変数で設定していた部分は基本的に全出力する。プロジェクト内で出力したりしなかったりするとスタイルが当たったり当たらなかったりでいちいちSCSSの設定ファイルをチェックしにいく面倒な作業が発生していた。間引いても全出力してもパフォーマンスにはあまり影響がないため全出力で統一する。

単ファイルでの動作を考慮

グローバル変数がないと動かないなど、単ファイルでの使いづらさを減らす。デフォルト値をファイル内に持たせる。

二重・三重管理が増えすぎるので、少なくともコンフィグは読み込むようにする。

qrac commented 4 years ago

グローバル化したmixinsを利用する場面が多いため、単一ファイルでの利用は厳しい。そのため、変数のフォールバック記述もあまり意味がない。ドキュメントにデフォルト値を記載するなどして追いづらい変数の値をフォローする。

qrac commented 4 years ago

逆にグローバル化したmixinを使わないようにする。 変数はフォールバックを用意。これによって、単一ファイルをSassの次期モジュールシステム @use で読み込み、スコープした変数を当てつつ使うことができる。

qrac commented 4 years ago

mixinは二重管理になってしまうが、同じものをオーバーライドとして配置しfallbackのように扱う。

qrac commented 4 years ago

v7.0.0から適応。