2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Vue/NuxtでESLintを活用(ファイルセーブで自動化編)

Last updated at Posted at 2019-03-10

はじめに

この記事では、エディタの設定を行い、エディタ上でLintに引っかかる部分を簡単に見つけられるように設定して行きます。

  1. ひとまず導入編
  2. vueスタイルガイド導入編(vue/recommendの活用)
  3. ファイルセーブで自動化編(エディタ自動校正機能) ←本記事
  4. コミット度にlintを走らせる編(lint-stagedとhuskey)
  5. Circle CIでESLint導入編

前回の、vueスタイルガイド導入編でVueファイルまで検知対象としましたが、このままでは毎回npm run lintを走らせないとどこがスタイルガイドに反しているかわからないのは不便です。エディタの設定を行い、もっと簡単に目視で確認できるようにします。

VS Codeを使って行きます。各自お好みのエディタにも設定方法あると思います。
(エディタプラグインにESLintVeturが入っている前提で進めます)

設定

vueスタイルガイドに反しているコードを目視確認

まず、ルートディレクトリに.vscodeフォルダを作成しましょう。
vscodeディレクトリの作成.png

次に、中にsettings.jsonを作成し、以下のコードを書きます。
settings-jsonの作成.png

"files.associations"を書くことで、VSCodeで特定のファイルを言語に関連付けることができます。今回は.vueファイルはvue言語ですよと紐づけています。"eslint.validate"では、eslintで走らせる対象を設定しています。

さて、それではpages/index.vueをみてみましょう。

vscodeで目視確認.png

緑の波線が表示され、カーソルを合わせると注意の内容が出ています!
これはすごくわかりやすいですね!

ファイル保存で自動校正

さて、もう一歩進んで、セーブするたびに自動構成をかけましょう。
先ほど触れなかった"eslint.autoFixOnSave"trueにします。

自動校正設定.png

それでは、もう一度pages/index.vueに戻って、command+sで保存して見ましょう。

自動校正前.png

保存してみると

自動校正後.png

いかがでしょう?
とても便利じゃないですか?

この自動校正は先ほどの設定でJavaScritも対象にしているので、.jsファイルや.vueファイルの<script>タグ内にも同じく校正をかけてくれます。

.gitignoreに追記を忘れずに

このままだと、git管理するときに、.vscodeディレクトリまで含まれてしまいます。これは個別のエディタ設定なので.gitignoreに書いて含まれないようにしておきましょう。

スクリーンショット 2019-03-09 15.24.54.png

【追記】
ちなみに、/node_modules/も書いておきましょう。JavaScriptのライブラリはここに入っており、プロジェクトの管轄外なことがほとんどであるから。
参考: http://bashalog.c-brains.jp/16/10/25-101200.php

注意

自動校正は完璧ではありません。コンポーネントタグを普通のタグと間違えて認識したり、以下のように==は自動で===に直したりまでは対応していません。
スクリーンショット 2019-03-09 15.09.58.png

既存プロジェクトに導入したり、大きなファイルに適用するときはくれぐれも注意しながら行ってください。

最後に

これで、スタイルガイドにあったコードを維持しながらの開発がスムーズにできますね! :v:

先ほどの自動校正では拾いきれない漏れを防ぐために、次は、git commitするたびにlintが走るように設定をして見ましょう!

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?