TIS ENGINEER NOTE

27才文系出身フリーランスエンジニアのブログ

プログラミング

次世代のWebフレームワークであるNuxt.jsを使ってみる

投稿日:

こんにちは、フリーランスエンジニアのてぃすです。

今日はVue.jsの開発を強力にサポートするWebフレームワークであるNuxt.jsについての簡単な紹介と開発の始め方について書いていこうと思います。

[toc]

Nuxt.jsについて

Nuxt.jsはVue.jsでWebフロントエンド開発を円滑に進めるためのフレームワークです。

メインの特徴としては、これまで実装難易度の高かったサーバーサイドレンダリングを簡単に実装するための機能を有していることです。

ただサーバーサイドレンダリングをしない場合でも、コンパイルなどをあまり意識せずに開発を始められることからVue.js開発のスタートキットとしても優秀ですし、nuxt generateなどの便利な機能から静的なWebページ生成ツールとしても高い有用性を備えています。

これからVue.jsを始めたいという人にもお勧めできるくらい完成度の高いフレームワークです。個人的な感想としては、フロントエンド界のRuby on Rails的なポテンシャルを持っているのではないかと考えています。

Nuxt.jsで開発を始める

では早速Nuxt.jsで開発を始めるための手順を紹介していこうと思います。基本的にはNuxt.jsの公式ドキュメントをベースに紹介しています。Nuxt.jsの公式ドキュメントは非常に充実していますので、開発する中で困ったことがあったら、まずは公式ドキュメントを参照するようにしておきましょう。

インストールから初期画面表示まで

Nuxt.jsの開発を始めるにはまず2つの方法があります。

スターターテンプレートを使う方法

Nuxt.jsの開発チームが用意したスターターテンプレートを使用して、コマンド1つで基本的なファイル構成が出来上がります。あとは自分の作りたいサービスに合わせてファイルを追加したり書き換えたりすることで簡単に開発を始めることができます。

フルスクラッチで始める方法

最初に1つずつファイルとディレクトリを用意して、自分でファイルを付け加えながら開発を進める方法です。Nuxt.jsのディレクトリ構造を調べながら進める必要がありますが、余計なファイルを作られないことと、Nuxt.jsの基礎を身につけながら環境構築を進めることができますので、オススメの方法です。

スターターテンプレートを使う場合

まずはVue.jsのコマンドラインツールであるvue-cliをインストールする必要があります。こちらはVueの開発をスムーズにするツールとして既にインストール済みの人もいるかも知れません。その場合はスキップしてもらってOKです。

vue-cliのインストールが完了したら、vueコマンドが使えるようになっていることを確認した上で、自分のPC上の作業用ディレクトリで以下のコマンドを実行します。

自分の場合~/workspaceを作業スペースとしているので、以下のように実施しました。

コマンドを実行するといくつか質問形式で入力画面が表示されますが、基本的にはEnterでスキップしてしまってOKです。

するとこれだけでコマンドを実行したディレクトリ配下にプロジェクト名で入力した名前のディレクトリが作成され、その中に基本的なNuxt.jsのファイル構成が出来上がります。(説明用にVisual Studio Codeを使用しています。)

ファイル構成が出来上がっていることを確認したら、vue initコマンドの実行結果の下にも表示されているスタート用のコマンドを実行します。

上記コマンドを実行すると最後にOPEN http://localhost:3000と表示されますので、ブラウザでhttp://localhost:3000開いてみましょう。Nuxt.jsのサンプル画面が表示されます。あとは作りたいサービスに応じてテンプレートファイルをいじったり模倣したりして、開発を進めていきましょう。

フルスクラッチで始める方法

自分でファイルを追加しながら始める方法ですが、こちらも手順としては非常にシンプルです。

まずは自分の作業ディレクトリ配下にプロジェクト名でNuxt.js開発用のディレクトリを作成して、その階層に移動します。例ではnuxt-sample-manualというサービスを作るとします。

次に作成したディレクトリにpackage.jsonを作成して、nuxt用の記述を追加します。

まずはファイルを作成して、

以下のように内容を記述します。

記述し終わったら、Nuxtをカレントディレクトリにインストールします。

Nuxt.jsのインストールが完了したら、基本となるディレクトリとファイルを作成します。

このpages/index.vueがlocalhost:3000に接続した時にNuxtの方で自動的に呼び出してくれるファイルとなります。試しに以下のようにファイルの中身を編集してみましょう。

編集を保存したら、スタートテンプレートの時と同様に開発用サーバーを起動します。

localhost:3000に接続することで、先ほどよりは地味ですが、保存した内容が画面に表示されることを確認できます。

まとめ:早速開発をスタートしましょう

いかがだったでしょう。できる限り丁寧に初心者の方でも躓きにくいように説明してきました。

以下の記事では開発環境が整った後に、スムーズに開発を行うための設定などを紹介しています。よりNuxt.jsでのフロント開発を加速させたい人は是非ご覧になってみてください。

https://tisnote.com/nuxt-js-setting/

これからのフロント開発において、主力となってくるであろうNuxt.jsの開発手法を身につけて、エンジニアとしての価値を高めていきましょう。

閲覧いただき、ありがとうございました。

よく読まれている記事

エンジニア入門

2018/8/19

プログラミングスクールって実際のところどうなの?

こんにちは、フリーエンジニアのてぃすです。 プログラミングスクール、今や広告やSNSでも頻繁に目にするこのワード。 初心者がプログラミングを始めるなら通うべき 独学でも十分だから必要ない プログラミングスクールに通ってもプログラマになれない などなど賛否両論飛び交っていますが、今日は現役エンジニアの視点からプログラミングスクールのメリット・デメリット、そしてエンジニアを目指す上での有力な選択肢となるかについてお話していきます。 プログラミングスクールとは何か その名前の通り、プログラミングを学ぶための学校 ...

続きを読む

office

エンジニア独立

2018/1/2

エンジニア歴2年の僕がレバテックフリーランスでフリーランスを目指してみた

正社員エンジニアからフリーランスエンジニアへの方向転換の一環として、業界最大手であるレバテックフリーランスの個人面談に出向いてきたので、その感想を書いていこうと思います。 フリーランスというと知識・経験・人脈を兼ね備えたスーパーエンジニアしかなれない存在だと思っている人も少なくありません。 しかし最近では今回紹介するレバテックフリーランスや以前の記事で紹介したギークスジョブなどといったエージェントを利用すれば、僕のように経験の浅いエンジニアでも十分に目指せる働き方となっています。 この記事が現在働いている ...

続きを読む

エンジニア入門

2018/8/19

最も効率の良いプログラミング学習フロー

こんにちは、フリーエンジニアのてぃすです。 エンジニアの需要が拡大し、売り手市場となったことから、プログラミングを学習し始めた人、学習してみたいという人がかなり増えてきています。 これからの時代プログラミングを学習することは、豊かな人生を目指す上で非常に強力なスキルとなってきます。 今回はプログラミング初心者の方々に向けて、最も効率的なプログラミングの学習方法を解説していきます。 はじめに この学習フローでは、遊びのメカニズムを利用して進めていきます。 どういうことでしょうか。説明していきます。 遊ぶ感覚 ...

続きを読む

エンジニア独立

2018/1/2

プログラマーはIT土方なのか

プログラマーという働き方について、調べたときに必ずといって良いほど出てくる単語であるIT土方。 実際に土木関係に従事する人たちがどのような労働環境におかれているかは置いといて、基本的には以下のような状況を揶揄して使われている言葉です。 毎日終電まで残業させられる 納期のプレッシャーに追われる 忙しいのに低賃金 とにかく辛い そういった過酷な環境であるから、『プログラミングを楽しいと思っていたり、理数系の才能がある人間じゃなければ絶対になるな』という言葉もよく聞きます。 今回はプログラマーが世間でIT土方と ...

続きを読む

エンジニア独立

2018/8/19

エンジニアがリモートワークをして感動したお話

こんにちは。フリーランスエンジニアのてぃすです。 僕はエンジニアとして活動する中で、メインで参加しているプロジェクト以外にもフルリモートでもう1つのプロジェクトにも参加しています。 今日は実際にリモートワークってどんなもんなのかについてお話していこうと思います。 前置き リモートワークの話題については各種メディア、ブログやSNSでも度々盛り上がっています。 通勤時間の短縮になる 通勤で使う体力を仕事にまわすことができる 家庭の事情などで外で働けない人も活躍することができる などのポジティブな捉え方もあれば ...

続きを読む

-プログラミング
-,

Copyright© TIS ENGINEER NOTE , 2018 All Rights Reserved Powered by AFFINGER5.