[Vue.js] Vue-CLIの使い方

Vue CLIについて

Vue-CLIはVue.jsでの開発補助のアプリケーションです。CLIは「Commnad Line Interface」の略で、Vue.jsの開発をコマンドラインで便利にするというコンセプトで作られています。

パッケージ管理はnpmまたはyarn、ビルドはwebpackになっています。※webpackは復数のjsファイルなどを1つにまとめてくれる管理ツールです。

VueRouter / Vuex / PWA / ESLint / TSLint / Pretter / Sass・SCSS・Less などを使うことができるようになっており、大規模開発で威力を発揮します。

Vue-CLIを使ってプロジェクト作成すれば、それに必要なツールが一度にインストールされます。

[Vue-CLIで可能なこと]
プロジェクト作成・トランスパイル・ビルド・コンパイル・開発サーバー稼働・バックエンドAPIのまとめ、単体のテスト・静的なコード解析・E2Eのテスト

2020-04-04_18h14_19
Vue CLIホームページ

Vue CLIのインストール

公式ページのトップ下部にインストール方法が記載されています。rpmとyarnのどちらかでインストールします。

今回はnpmを使ってインストールしてみます

バージョンの確認

プロジェクトの作成

コマンド実行後、下記の表示が出ます。

今回は詳細な設定はしないのでデフォルト(y)の選択でいきます。

これだけでインストール完了です。

開発サーバーの起動

プロジェクトディレクトリに移動

サーバーの起動

このような表示が出ればサーバー起動OKです。
ポートはデフォルトで「8080」になっているので、firewalldでポートを開放しておきましょう。

本番サーバーでIPが設定されている場合は、http://xxx.xxx.xxx.xxx:8080 と自分のIPアドレスをブラウザに入力すれば表示されます。

2020-04-04_22h41_53

生成されるファイル

[プロジェクト名]ディレクトリの中に以下のようなファイル・フォルダが設置されます。
2020-04-05_02h59_27

public.htmlの中身を確認

「Welcome to Your Vue.js App」という文字が表示されたページの中身は

このようなソースになっています。

Vue.jsの基本は学んだので、下記の部分にVue.jsがデータを出力しているということは予想できます。

しかし、自分でindex.htmlを作って、デフォルトのindex.htmlを変更してみましたが、この画面が表示されて、自分で作ったindex.htmlは表示されません。
デフォルトのindex.htmlをサーバーから削除しても同じページが表示されたままになっています。
これは、このindex.htmlファイルではないものが表示されているなぁと感じました。
試しにindex2.htmlのようなhtmlファイルをサーバーにアップしてみると、これはindex2.htmlがちゃんと表示されます。

もういちどindex.htmlのファイルの中身を見てみると、javascriptの表記が全く無く、vue.jsのCDNの読み込みもありません。

Node.js系のソースコードはそのままでは実行されず、ソースコードをビルドしてブラウザで動くファイルを作る必要があります。

今回ビルドはnpmを使います。npmはNode.jsをインストールしたときに同時インストールされています。

npmでbuild

このコマンドを実行すると、プロジェクトディレクトリに「dist」ディレクトリが作られます。

その中のindex.htmlを覗いてみます。

このソースだとVue.jsの基礎を学べば、やっていることはなんとなく理解できますね。

main.js

JavaScriptファイルはmain.jsがベースとなっているはずなので、こちらも中身を確認してみます。

上部で「./App.vue」ファイルをインポートしているのがわかります。後ほどこの中身も確認してみます。

「Vue.config.productionTip = false; 」は開発中はTrue、公開時はFalseに設定することが多いですね。Trueだとコンソールにメッセージが多めに出力されます。ここはデフォルトでfalseになっていました。

new Vueの部分は、基礎で学んだ書き方と違う形式になっているようですが、 renderがあるので、App.vueから持ってきたデータを、#appに出力しているようです。

App.vue

App.vueの中身です。

上部にtemplateタグがあり、ロゴとWelcome to Your Vue.js Appの文字が記載されています。
その下に
「import HelloWorld from ‘./components/HelloWorld.vue’」があり、ここでリンクなどの部分を読み込んでいます。

下部にはスタイルシートが記載されています。vueファイルにはスタイルシートを直接記載してOKのようです。



Author: webmaster