0
0

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 3 years have passed since last update.

vue-cliでどうやってbuildされるのか(1)

Posted at

vue-cliでどうやってbuildされるのか

vue-cliとは?

vue-cliはwebpackを利用して設定などを出力してくれる雛形作成ツール
内部でcli-serviceというライブラリを使っている
→ これがwebpackをラップして使いやすくしてくれている

webpackは拡張仕事にプラグインに渡すことで「前処理」的なことをしてくれている
.vueファイルは、jsでそのまま読み込める形に変換する必要があり、それをvue-loaderというwebpackのプラグインがやってくれている
処理後のファイルは build.js で、.vueファイルはjsのオブジェクトに変換される
→ その後、webpackで他のjsライブラリとまとめて1つのファイルが作成される

なるほど、webpackについて理解する必要がありそう。。。

webpackについて

webpackの用途

  • pug, haml, ejsのようなテンプレートエンジンのコンパイル
  • sassなどのcssプリプロセッサのプリコンパイル
  • TypeScriptのようなAltJsのトランスコンパイル
  • Linterを用いたjsの構文チェック
  • Angulaer,React,Vueのようなjsフレームワークの実行

webpackとは?

JSの静的モジュールバンドラー
モジュールに分割され、別々になったJSファイルの依存関係を解決して、1つのファイルにまとめるツールの総称
モジュールバンドラーが登場したことによって、複数のjsファイルをまとめ htmlは1つのファイルを読み込むだけでよくなる

webpackはモジュールバンドラー

webpackの4つの基本要素

  • Entry
  • Output
  • Loader
  • Plugins

Entry

JSをバンドルする上で、どのファイルを基準として依存関係を解決するかを指定
エントリーには複数ファイルを指定できる
エントリーポイントを指定するとwebpackはエントリーポイントで指定したファイルが依存する他のモジュールとライブラリを読み込んでくれる

Output

webpackがまとめたファイルを「どこ」に「どのような名前」で出力するかを指定します。

Loader

webpack自体はJSしか理解できない。Loaderを使用することで、JS以外のファイルをモジュールに変換して処理を行える。
設定ファイルには「ファイル名」と「適用する処理内容」を記述する

Plugins

ファイルを纏める以外のタスク(カスタムタスク)の実行ができる

流れ

Entry → Loaders → Plugins → Output

webpackと似た仕組み

Gulp
GRUNT
npm script
PARCEL
...etc

gulpはタスクランナー
web制作で自動化したい処理を定義し、自動的に実行するのが目的

続きは今度

webpackを軽く理解したところで、vue-cliの構成ファイルを見ていく

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?