Vuetify — A Vue Component Framework — Vuetify
VuetifyはVue用のオープンソースのUIコンポーネントフレームワークで、デザインスキルを必要としません。美しくコンテンツ豊富なWebアプリケーションに必要な全てのツールを提供します。
この記事では、vue-cliを用いて Vue + Vuex + Vue Router + Vuetifyの環境を構築する方法を紹介します。
Vueテンプレートを作成するためのコマンドラインインタフェースをインストールします。
$ npm install -g @vue/cli
2.x系がインストールされている場合は、一度アンインストールしてから最新版をインストールしてください。
$ npm list -g @vue/cli # バージョンの確認
$ npm uninstall -g vue-cli # アンインストール
$ npm install -g @vue/cli # 最新バージョンのインストール
vue-cliを用いてプロジェクトを作成します。
$ vue create {project-name}
以下の設定でプロジェクトを作成しました。
プロジェクトに関する各設定項目のプリセットを選択します。
Manually select features: 手動で各項目の設定
また、手動で選択した項目は保存することが可能です。
プロジェクトに導入する機能を選択します。
今回は以下の機能を選択しました。それぞれの機能については割愛します。
Vue RouterのHistoryモードを設定するかどうかです。
有効にすることでURL上の表示を一般的な形にすることができます。
参考:https://router.vuejs.org/ja/guide/essentials/history-mode.html
その名の通り、linter, formatterの構成を選択します。
lintの動作に関する設定を選択します。
Lint on save: ファイル保存時にlinter動作
各機能の設定をどこに作成するかを選択します。
In dedicated config files: それぞれの設定ファイルを作成
今回の設定項目をテンプレートととして保存するかどうかを選択します。
保存する場合は名前を決めることができます。
🎉 Successfully created project wp-project.
👉 Get started with the following commands:
$ cd wp-project
$ npm run serve
設定が完了すると上記の出力がされ、プロジェクトが完成しています。
プロジェクトの大枠ができたので、CSSフレームワークを導入します。
今回は、 Vuetify というマテリアルデザインのフレームワークを導入します。
$ vue add vuetify
途中で選択を求められますが、 Defalut(recommended) で構いません。
作成が完了すると、以下のファイルが出力されています。
plugins/vuetify.js
import Vue from 'vue'
import Vuetify from 'vuetify/lib'
import 'vuetify/src/stylus/app.styl'
Vue.use(Vuetify, {
iconfont: 'md',
})
main.js にもimport文が追加されています。
この時点ではlinterのルールが微妙なので、以下のように色々怒られてます。
eslintのルールとprettierのルールがそれぞれあるので、問題なく動くように .eslintrc.js を編集します。
.eslintrc.js
module.exports = {
root: true,
env: {
node: true,
},
extends: ['plugin:vue/essential', '@vue/prettier'],
rules: {
'prettier/prettier': [
'error',
{
// Prettierのルール設定
semi: true,
singleQuote: true,
bracketSpacing: true,
trailingComma: 'es5',
jsxBracketSameLine: true,
arrowParens: 'avoid',
},
],
// ESLintのルール設定
'no-console': 'off',
},
parserOptions: {
parser: 'babel-eslint',
},
};
rules プロパティを修正しています。ルールの部分は必ずしも上記と同じルールにする必要はありません。
PrettierとESLintそれぞれのルールは以下のURLを参考にしてください。
ESLintルール(参考):
https://garafu.blogspot.com/2017/02/eslint-rules-jp.html
Prettierルール(公式):
https://prettier.io/docs/en/options.html
上記ルールを設定すると、さらにエラーがたくさん出ます。
しかし、以下のコマンドを実行すると、ルールに従って自動でエラーを修正してくれます!
npm run lint
便利ですね〜
ちなみに、 ESLint だけでは修正の機能が十分に機能しないので Prettier を導入しています。
ここまででプロジェクトの雛形が仕上がったので、最後に動作確認をします。
以下のコマンドを実行して http://localhost:8080/ でアクセスします。
npm run serve
無事にアクセスできれば完成です!
vue-cliを用いて Vue + Vuex + Vue Router + Vuetifyの環境を構築する方法を紹介しました。
1回理解すればここまでの手順は5分でできるので、これをベースに自分好みの構成にして開発に入りましょう!
https://prettier.io/docs/en/options.html