はじめに
この記事では、ESLintを使って、Vueファイルの監視を設定して行きます。
- vueスタイルガイド導入編(vue/recommendの活用) ←本記事
- ファイルセーブで自動化編(エディタ自動校正機能)
- コミット度にlintを走らせる編(lint-stagedとhuskey)
- Circle CIでESLint導入編
ESLintを入れたのであれば、jsファイルだけでなく、せっかくなのでVueファイルも監視してしまいましょう。その設定方法をこの記事では説明して行きます。プロジェクトは前回使用したものを使って行きます。
Vueスタイルガイドとは
Vueスタイルガイドとは、公式で推奨されているVueの書き方ガイドです。ある程度慣れてきたら、ガイドに沿った書き方をすることで、保守性が増したり、可読性が上がったりします。
優先度がA~Dまであり、わかりやすく説明されているのでぜひ一度読んでみてください。
確認
まずは確認です。例えば、現状、pages/index.vue
を以下のようにスタイルガイドに反した自己終了形式でない書き方
をしてもlintで注意されることはありません。
こういったスタイルガイドに反した書き方があれば監視して注意を出してくれるように設定をして行きましょう。
設定
まずは、vueファイルが監視対象となるように設定します。
vue-loader
とeslint-plugin-vue
が必要になります。前回からの続きでしたら既に初期設定で入っているので問題ありません。既存プロジェクトへの導入であれば、以下を参考にインストールしてください。
次に、.eslintrc.js
を編集します。2箇所追加しましょう。
module.exports = {
root: true,
env: {
browser: true,
node: true
},
parserOptions: {
parser: 'babel-eslint'
},
extends: [
'@nuxtjs',
'standard',
+ "plugin:vue/recommended"
],
+ plugins: [
+ 'vue'
+ ],
// add your custom rules here
rules: {}
}
"plugin:vue/recommended"とは
まず、extends
に"plugin:vue/recommended"
を追加することで、Vue.js公式で推奨されているスタイルガイドの優先度Cまでをカバーしてくれます。(https://jp.vuejs.org/v2/style-guide/index.html)
extends | 優先度カバー範囲 |
---|---|
"plugin:vue/essential" | 優先度Aまで |
"plugin:vue/strongly-recommended" | 優先度Bまで |
"plugin:vue/recommended" | 優先度Cまで |
参考:Vue.jsスタイルガイドとeslint-plugin-vue検証ルールのマッピング
ここはお好みでいいと思いますが、せっかくですので私はいつもCまで適応させるために、"plugin:vue/recommended"
を利用しています。
"plugins"とは
以下を入れることで、.vue
ファイルの監視を行っています。
+ plugins: [
+ 'vue'
+ ],
この設定がないと、.vue
のファイルはlintを走らせても検知してくれません。
検証
では、きちんと.vue
ファイルも検知してくれてるか確認してみましょう。
ターミナルでnpm run lint
を叩いてみましょう。
すると、新しく以下のようなメッセージが出ていると思います。
最後に
これで、Lintを使って.vue
ファイルの検知ができました!
また、Vueのスタイルガイドに沿った開発も行っていけます。
次は、エディタをカスタマイズして、もっと簡単にLint検出と自動校正を行えるようにしましょう!
https://qiita.com/yfujii1127/items/65b04f6e3d17c3eb85da