以下のサイトを参考に導入します。
Using Bulma and Font Awsome with NUXT
http://bgraphic.no/using-bulma-font-awsome-nuxt/
@nuxtjs/bulmaを使うと簡単に導入できますが、変数を使ったカスタマイズを行いたいので@nuxtjs/bulmaを使わずに上記のサイトの方法で導入します。
以下は上記のサイトからFont Awsome部分を省いた導入方法
##Bulmaを導入する
まずはBulmaを導入する手順
- npm install bulma --save
- npm install sass-loader node-sass --save-dev
- Add a css block to your nuxt.config.js:
yarnを使っているならば
- yarn add bulma
- yarn add sass-loader node-sass --dev
- Add a css block to your nuxt.config.js:
nuxt.config.js
にcss設定を追記。
module.exports = {
/*
** Include css not in components
*/
css: [
// node.js module but we specify the pre-processor
{ src: 'bulma/bulma.sass', lang: 'sass' }
]
}
##カスタマイズできるようにする
Bulmaが導入できたのでassetsディレクトリにカスタマイズ用の main.scss
を作成して以下を記述します。
ソースはBulmaのカスタマイズ方法が書いてあるページから取ってきました。
Customizing with Sass
https://bulma.io/documentation/overview/customize/
// 1. Import the initial variables
@import "../sass/utilities/initial-variables";
@import "../sass/utilities/functions";
// 2. Set your own initial variables
// Update blue
$blue: #72d0eb;
// Add pink and its invert
$pink: #ffb3b3;
$pink-invert: #fff;
// Add a serif family
$family-serif: "Merriweather", "Georgia", serif;
// 3. Set the derived variables
// Use the new pink as the primary color
$primary: $pink;
$primary-invert: $pink-invert;
// Use the existing orange as the danger color
$danger: $orange;
// Use the new serif family
$family-primary: $family-serif;
// 4. Setup your Custom Colors
$linkedin: #0077b5;
$linkedin-invert: findColorInvert($linkedin);
$twitter: #55acee;
$twitter-invert: findColorInvert($twitter);
$github: #333;
$github-invert: findColorInvert($github);
// 5. Add new color variables to the color map.
@import "../sass/utilities/derived-variables.sass";
$addColors: (
"twitter":($twitter, $twitter-invert),
"linkedin": ($linkedin, $linkedin-invert),
"github": ($github, $github-invert)
);
$colors: map-merge($colors, $addColors);
// 6. Import the rest of Bulma
@import "../bulma";
@import
のパスをNuxt.js用に書き換えます。
@import "~bulma/sass/utilities/initial-variables";
@import "~bulma/sass/utilities/functions";
// 2. Set your own initial variables
// Update blue
$blue: #72d0eb;
// Add pink and its invert
$pink: #ffb3b3;
$pink-invert: #fff;
// Add a serif family
$family-serif: "Merriweather", "Georgia", serif;
// 3. Set the derived variables
// Use the new pink as the primary color
$primary: $pink;
$primary-invert: $pink-invert;
// Use the existing orange as the danger color
$danger: $orange;
// Use the new serif family
$family-primary: $family-serif;
// 4. Setup your Custom Colors
$linkedin: #0077b5;
$linkedin-invert: findColorInvert($linkedin);
$twitter: #55acee;
$twitter-invert: findColorInvert($twitter);
$github: #333;
$github-invert: findColorInvert($github);
// 5. Add new color variables to the color map.
@import "~bulma/sass/utilities/derived-variables.sass";
$addColors: (
"twitter":($twitter, $twitter-invert),
"linkedin": ($linkedin, $linkedin-invert),
"github": ($github, $github-invert)
);
$colors: map-merge($colors, $addColors);
// 6. Import the rest of Bulma
@import "~bulma/bulma";
nuxt.config.jsのcss設定を変更する。
module.exports = {
/*
** Include css not in components
*/
css: [
// node.js module but we specify the pre-processor
{ src: '~assets/main.scss', lang: 'scss' }
// { src: 'bulma/bulma.sass', lang: 'sass' }
]
}
##warningが表示されないようにする方法
0.5.2から導入されたvariable gap columns機能に関連してコンパイル時にwarningが出るので
これが表示されないようにする。
###方法1(0.6.1以降で使える方法)
実験的な機能であるvariable gap columnsに関するwarningなので、この機能を無効にしてしまう。
$variable-columns: false;
を@import "~bulma/bulma";
の前に追記する。
$variable-columns: false;
@import "~bulma/bulma";
}
参考 https://github.com/jgthms/bulma/issues/1190
###方法2
postcss-custom-propertiesのwarningが表示されないようにする。
build
に以下を追記する。
build: {
postcss: {
plugins: {
'postcss-custom-properties': {
warnings: false
}
}
},
},
参考 https://github.com/nuxt/nuxt.js/issues/1670
以上です。