2018年3月20日火曜日

VRゲームを作る5 - Node.jsの勉強

環境の構築が出来ない。

先ずはNode.jsを公式サイトからインストール。
そしてバージョン確認をコマンドプロンプトから実行。
C:\User\(username)>node -v
v8.10.0

C:\User\(username)>npm -v
5.6.0

ここまでは問題なし。



Node.jsにあるsocket.ioをインストールする。
C:\Users\(username)>npm install socket.io
npm WARN saveError ENOENT: no such file or directory, open 'C:\Users\(username)\package.json'
npm WARN enoent ENOENT: no such file or directory, open 'C:\Users\(username)\package.json'
npm WARN (username) No description
npm WARN (username) No repository field.
npm WARN (username) No README data
npm WARN (username) No license field.

+ socket.io@2.0.4
updated 1 package in 2.95s

バージョンが最後に出てるけど多分エラー。
Node.jsのインストールフォルダはC:\Program Files\nodejs\だけど、
子フォルダのどこにもsocket.ioが生成されていない。
package.jsonとやらが無いようなので、
作成する。

C:\Users\(username)>npm init -y
Wrote to C:\Users\(username)\package.json:
{
  "name": "(username)",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "dependencies": {
    "socket.io": "^2.0.4"
  },
  "devDependencies": {},
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}

これでC:\Program Files\nodejs\node_modules\npmにpackage.jsonが生成された。
もう一度socket.ioのインストールを試みる。

C:\Users\(username)>npm install socket.io
npm WARN (username)@1.0.0 No description
npm WARN (username)@1.0.0 No repository field.


+ socket.io@2.0.4
updated 1 package in 3.626s

ダメでした。

package.jsonにsocket.ioの記載を追記する、という記事を見掛けたので以下のように追記。
  "dependencies": {
    "socket.io": "~2.0.4",
}

ワンモア
C:\Users\(username)>npm install socket.io
npm WARN (username)@1.0.0 No description
npm WARN (username)@1.0.0 No repository field.


+ socket.io@2.0.4
updated 1 package in 4.86s

まだ残る...
と、こんな記事を発見
Express×socket.ioを使ってwebsocketで遊ぼう

なるほどディレクトリを別に作成すればいいのだろうか。
Expressのインストールがうまく行かないのでスルーして、
Socket.ioを先にインストールしたらちゃんとフォルダが生成された。

Socket.ioを入れた後に
Node.js + Express入門
を参考にしてExpressをインストール。
npm install -g express

npm install -g express-generator
を実行しただけだけど。

さて元のサイトに戻ってjsファイルの作成をする。
Linuxじゃないのでtouchコマンドは使えない。
手動で.jsを作成し、サイトの通りに記述。

で、startすると、

C:\Users\(username)\Desktop\testsever>npm start
npm ERR! missing script: start

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\(username)\AppData\Roaming\npm-cache\_logs\2018-03-20T13_12_23_627Z-debug.log

辛い。