今までWeb系の方には手を出していなかったのですが、そろそろ挑戦してもいいかもしれないと思うようになってきました。
開発環境は色々ありますが、Reactを使ってみようと思ったのでその環境構築の備忘録です。
ちなみにブラウザ上でReactのコードを書くこともできますが、ローカル環境構築になります。
基本的には公式ページのチュートリアルのままなので、詳しいことを知りたい方はそちらを参照してください。
では、始めます。
1:node.jsのインストール
Reactを使うためにはNode.jsをインストールしておく必要があります。
以下の公式のダウンロードページを開きます。
環境に合ったインストーラを選択してクリックし、ファイルをダウンロードします(今回はLTSのWindows 64bit msiを選択しました)。
ダウンロードしたインストーラを起動させると、インストールできるかどうかのチェックが走るので少し待ちます。
チェックが終わるとインストールを進められるようになるので「Next」をクリックします。
ライセンスが表示されるので読み、同意するのところにチェックを入れて「Next」をクリックします。
インストール場所が表示されるので、デフォルトのままで「Next」をクリックします。
カスタムインストールもデフォルトのままで「Next」をクリックします。
Nativeモジュールの追加が尋ねられますが、デフォルトでチェックを外したままで「Next」をクリックします。
インストールの準備ができたので「Install」をクリックします。
PCに変更を加えるか尋ねられるので「はい」を選択します。
インストールが始まるので終わるまで待ちます。
インストールが終わったら「Finish」をクリックします。
次にちゃんとNode.jsがインストールされているかを確認していきます。
コマンドプロンプトかPowerShellを起動させて以下のコマンドを実行します。
$ node --version
以下のようにバージョンが表示されていればNode.jsのインストールは完了です。
2:Reactのチュートリアル
Node.jsのインストールができたのでReactを使ってチュートリアルにある空の3×3のマスを表示させてみます。
まずはどこでもいいのでReact用の空フォルダを作成します。自分はドキュメント配下に「react」という空フォルダを作成しました。
コマンドプロンプトかPowerShellを立ち上げて以下のコマンドでそのフォルダに移動します。
$ cd [React用空フォルダパス]
フォルダに移動したら、以下のコマンドを実行します。
$ npx create-react-app my-app
必要なパッケージのインストールやテンプレートのダウンロードが開始されるので、終わるまで待ちます。
ちなみにコマンドが終了すると「my-app」というフォルダが作成されます。
先ほどのコマンドが終了したら、以下の4つのコマンドを順に実行します。
$ cd my-app # my-appフォルダへ移動 $ cd src # srcフォルダへ移動 $ del * # 現在いるのフォルダ内をすべて削除 $ cd .. # my-appフォルダへ戻る
srcフォルダ内をすべて削除したら、そのsrcフォルダ内に以下のファイルを新規作成します。
・index.css
body { font: 14px "Century Gothic", Futura, sans-serif; margin: 20px; } ol, ul { padding-left: 30px; } .board-row:after { clear: both; content: ""; display: table; } .status { margin-bottom: 10px; } .square { background: #fff; border: 1px solid #999; float: left; font-size: 24px; font-weight: bold; line-height: 34px; height: 34px; margin-right: -1px; margin-top: -1px; padding: 0; text-align: center; width: 34px; } .square:focus { outline: none; } .kbd-navigation .square:focus { background: #ddd; } .game { display: flex; flex-direction: row; } .game-info { margin-left: 20px; }
・index.js
import React from 'react'; import ReactDOM from 'react-dom'; import './index.css'; class Square extends React.Component { render() { return ( <button className="square"> {/* TODO */} </button> ); } } class Board extends React.Component { renderSquare(i) { return <Square />; } render() { const status = 'Next player: X'; return ( <div> <div className="status">{status}</div> <div className="board-row"> {this.renderSquare(0)} {this.renderSquare(1)} {this.renderSquare(2)} </div> <div className="board-row"> {this.renderSquare(3)} {this.renderSquare(4)} {this.renderSquare(5)} </div> <div className="board-row"> {this.renderSquare(6)} {this.renderSquare(7)} {this.renderSquare(8)} </div> </div> ); } } class Game extends React.Component { render() { return ( <div className="game"> <div className="game-board"> <Board /> </div> <div className="game-info"> <div>{/* status */}</div> <ol>{/* TODO */}</ol> </div> </div> ); } } // ======================================== ReactDOM.render( <Game />, document.getElementById('root') );
この2つのファイルの作成ができたら以下のコマンドを実行して起動させます。
$ npm start
ちなみに実行すると以下のようになります。
起動後になんでも良いのでブラウザを開き「http://localhost:3000/」にアクセスすると、以下のような3×3のマス目が表示されます。
終了させたい場合は、「npm start」コマンドを実行している画面で「Ctrl + C」を連打していると「バッチジョブを終了しますか (Y/N)?」と尋ねられるので「y」と入力してEnterキーを押下することで終了できます。
終了させた状態で再度「http://localhost:3000/」にアクセスしても、マス目は表示されなくなります。
以上がWindowsでのReactの環境構築方法になります。
まだ環境を導入したというだけなので、これからちょっとずつでもReactを勉強していきたいですね…。
・参考資料