Visual Studio CodeでDart Sassのコンパイルができる拡張機能「DartJS Sass Compiler and Sass Watcher」

Sassをコンパイルする方法は様々です。
案件レベルでがっつりする場合は開発環境を整える必要がありますが、ちょっと1人でSassを触りたいレベルであればVisual Studio Codeの拡張機能を使うとラクです。
今回はVisual Studio CodeでDart Sassのコンパイルができる「DartJS Sass Compiler and Sass Watcher」を紹介します。
DartJS Sass Compiler and Sass Watcher

下記2つの機能が使える拡張機能です。
- Sassのコンパイル
- Auto Prefix(CSSのベンダープレフィックス自動付与)
「Live Sass Compiler」という拡張機能も有名ですが、こちらはDart Sassには対応していません。
これから勉強するのであれば、Dart Sassを使うようにした方がいいでしょう。
基本的な使い方
インストールすれば、ワークスペース内でSassの.scssファイルを保存すると自動でコンパイルされます。
しかし、デフォルトの設定のままだと、CSSファイルはSassファイルと同じディレクトリに生成されます。

Sassは管理しやすいように別フォルダで管理することの方が多いので、設定を変えて使います。
設定の変更
Visual Studio Codeの設定を変更したり、settings.jsonファイルにコードを追加して設定を変更します。
CSSファイルの生成場所を変更
「dartsass.targetDirectory」でCSSファイルの生成場所を変更できます。
開いているフォルダのルートディレクトリに生成したい場合は「./」と設定します。
「assets」フォルダ内の「css」フォルダに生成したい場合は「assets/css/」とします。
{
"dartsass.disableAutoPrefixer": "assets/css/"
}これで生成場所が変更されました。
圧縮版のminファイルを生成するかどうかの設定
デフォルトでは通常のCSSに加えて、改行やスペースを全て除いて容量を節約した「○○.min.css」も一緒に生成されます。
通常版だけでいいか、それとも圧縮版だけ生成するかなどの設定ができます。
| 設定値 | 内容 |
|---|---|
| both | 通常版も圧縮版も両方生成する |
| cssonly | 通常版のCSS(○○.css)のみ生成する |
| minified | 圧縮版のCSS(○○.min.css)のみ生成する |
{
"dartsass.outputFormat": "both"
}不要な機能の無効化
デフォルトで有効化されている機能の中から、不要なものは無効化できます。
| 設定項目 | 内容 | 備考 |
|---|---|---|
| dartsass.disableAutoPrefixer | Autoprefixerを無効にする | マルチブラウザに対応するためのベンダープレフィックスを CSS生成時に自動で付与してくれる機能 |
| dartsass.disableCompileOnSave | ファイル保存時にコンパイルしてくれるのを無効化 | |
| dartsass.disableSourceMap | ソースマップの生成を無効化 | 一緒に生成される「style.css.map」ファイルで、これがあると、ブラウザの開発者ツールで、元の .scssファイルの何行目の記述か分かる |
| dartsass.enableStartWithUnderscores | 名前がアンダースコア(_)から始まるファイルもコンパイルを有効にする | 一般的にアンダースコアから始まるファイルはインポート用 |


npm-scriptsでSCSSをコンパイルする環境を構築する方法
.gitignoreに含めた方がいいファイル・フォルダが一覧でまとまっている「gitignore.io」
Google Maps APIでピンのアクティブ時にピン画像を変える方法
Visual Studio Codeの基本|概要やインストールから日本語化など最低限の設定方法
Visual Studio Codeでコメントを色分けして管理する「Better Comments」
Google Maps APIでピンをクリックしたときに吹き出しを表示する方法
Visual Studio Codeの「Debugger for Chrome」でJavaScriptのデバッグを行う
iTerm2で起動時に左上に表示される「Tip of the Day(今日のTip)」を非表示にする方法
Google Maps APIでピンの見た目をカスタマイズする方法
WordPressの自動バックグラウンド更新を無効にする方法とその注意点
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
AirPodsで片耳を外しても再生が止まらないようにする方法
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
1つのノートアプリにすべて集約するのをやめた理由|2025年時点のノートアプリの使い分け
Notionログイン時の「マジックリンク」「ログインコード」をやめて普通のパスワードを使う
AlfredでNotion内の検索ができるようになるワークフロー「Notion Search」
Gitで1行しか変更していないはずのに全行変更した判定になってしまう
Macでアプリごとに音量を調節できるアプリ「Background Music」
Macのターミナルでパスワード付きのZIPファイルを作成する方法
MacBook Proでディスプレイのサイズ調整をして作業スペースを広げる
SteerMouseの「自動移動」機能で保存ダイアログが表示されたら自動でデフォルトボタンへカーソルを移動させる
iPhoneでタッチが一切効かなくなった場合に強制再起動する方法