
Nuxt.jsでSassファイルをグローバルに使えるようにする
Nuxt.jsのフレームワークの中においては、単一コンポーネントファイル内であればSassなどが使え、ビルドした時にCSSへとコンパイルされます。ただ、そのVueファイル内でしか使えないので、共通スタイルとしてグローバルに使いたい場合もあるかと思います。そこで今回はNuxt.jsでグローバルにSassを使う方法を備忘録として残しておきたいと思います。
Nuxt.jsでSassを使う場合には「node-sass」と「sass-loader」のモジュールパッケージが必要となります。yarnもしくはnpm経由でローカルのモジュールフォルダにインストールしていきます。
Vueのプロジェクトにおいては、基本的にコンポーネント単位でスタイルも管理することが多いかと思いますが、変数やミックスインなど共通で使えるものも残しておきたいですよね。そんな時にはこのようにグローバルとして使えるSassを用意しておくと便利ですね。 (参考にさせていただいたサイト) Nuxt.js API: css プロパティ
$ cd プロジェクトディレクトリ $ yarn add --dev node-sass sass-loader もしくは $ npm install --save-dev node-sass sass-loaderインストールが終わると「package.json」のdevDependenciesのリストに追加されているのが確認できます。 【package.json】※一部抜粋
{
"devDependencies": {
.......
"node-sass": "^4.12.0",
"sass-loader": "^7.2.0",
.......
}
}
次に、プロジェクトルート直下のassetsディレクトリ配下に使いたいSassファイルを設置していきます。もちろんアンダーバーをつけてパーシャルファイルとし、Sassファイルを分割することも可能です。
/ ┣ assets ┗ scss ┣ common.scss ┣ _base.scss ┗ _layout.scssそして、プロジェクト直下にある「nuxt.config.js」にあるCSSプロパティの値に対象のSassファイルをルートパスで指定します。@を入れることでプロジェクトルートを基準としたルートパスで指定できます。 【nuxt.config.js】※一部抜粋
export default {
css: [
'@/assets/scss/common.scss'
]
}
デベロッパーツールで確認してみると、Sassファイルがコンパイルされていることが確認できます。
Vueのプロジェクトにおいては、基本的にコンポーネント単位でスタイルも管理することが多いかと思いますが、変数やミックスインなど共通で使えるものも残しておきたいですよね。そんな時にはこのようにグローバルとして使えるSassを用意しておくと便利ですね。 (参考にさせていただいたサイト) Nuxt.js API: css プロパティ
categories
- WordPress(61)
- JavaScript(49)
- Vue.js(48)
- CSS(46)
- jQuery(34)
- Nuxt.js(22)
- Sass(21)
- Gulp(17)
- webpack(16)
- PHP(14)
- HTML(14)
- GSAP(11)
- React(10)
- Vite(9)
- Pug(9)
- Laravel(8)
- Cordova(8)
- Linux(7)
- Next.js(6)
- Apache(5)
- Shopify(4)
- REST API(4)
- Node.js(4)
- Smarty(3)
- Git(3)
- JSON(3)
- その他プログラミング(3)
- Google Apps API(3)
- Bootstrap(3)
- 環境構築・システム(3)
- TypeScript(2)
- EJS(2)
- RMS(2)
- Docker(2)
- Instagram API(2)
- Excel VBA(2)
- SVG(1)
- Dart(1)
- ECカートASP(1)
- Markdown(1)
- AMP(1)
- Nginx(1)
- XML(1)
- shellscript(1)
- Ruby(1)
- MySQL(1)