Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8902

TypeError: validator is not a functionが解決しない

$
0
0

とりあえず初心者向けの書籍を一冊購入。

とにかく写経でもいいから一通りのアプリを作成したいと動きをメモしつつとりあえず書き上げた。
さあ動かしてみよう

しかしコンソールログに出たのは・・・

TypeError: validator is not a function

いやいや読み込んでますけど汗

varvalidator=require('express-validator');// ~~~~~~// (中略)// ~~~~~~app.use(validator());

※本当はvar使っちゃいけないけどとりあえず写経なので、
あとサンプルのソースと比較しやすいためこのままにしてます

どこが違うのか比較しよう

ソースは同じ汗

となると、インストールしたモジュールのバージョンがちがうのか?

以下自分のpackage.json

package.json
{"name":"mini-board-2","version":"0.0.0","private":true,"scripts":{"start":"node ./bin/www"},"dependencies":{"bookshelf":"^1.1.0","cookie-parser":"~1.4.4","debug":"~2.6.9","ejs":"~2.6.1","express":"~4.16.1","express-session":"^1.17.0","express-validator":"^6.4.0","http-errors":"~1.6.3","knex":"^0.20.9","morgan":"~1.9.1","mysql":"^2.18.1"}}

以下サンプルのpackage.json

package.json
{"name":"mini-board-2","version":"0.0.0","private":true,"scripts":{"start":"node ./bin/www"},"dependencies":{"bookshelf":"^0.13.3","cookie-parser":"~1.4.3","debug":"~2.6.9","ejs":"~2.5.7","express":"~4.16.0","express-session":"^1.15.6","express-validator":"^5.2.0","http-errors":"~1.6.2","knex":"^0.14.6","morgan":"~1.9.0","mysql":"^2.15.0"}}

全然違う

バージョンをそろえて、npm install

通りました

$ npm start

> mini-board-2@0.0.0 start C:\Users\user\Desktop\mini_board_2
> node ./bin/www

GET / 302 118.593 ms - 56
GET /users 200 179.510 ms - 1242
GET /stylesheets/style.css 200 22.919 ms - 753
GET /favicon.ico 302 5.750 ms - 28
GET /users 304 9.479 ms - -

原因は?

最初にいろんなパッケージをインストールする際、最新のパッケージをインストールしたためではないか。
本自体は昨年の5月に改訂されたがいろいろググるうちに自分と同じエラーを質問している方がいて、書き方が古いですよーみたいなことを言われている。
たしかに、ほかに出していたpaginationのエラーも今はこういう書き方ですよーみたいな内容の文章があった。

最新のNode.js情報を追いかけなければ。

参考文献・サイト

・掌田 津耶乃 (2019/5/10)Node.js超入門[第2版] 秀和システム
https://qiita.com/maitake9116/items/7825d90c09f3e2f87dea
https://stackoverflow.com/questions/56711444/typeerror-validator-is-not-a-function-after-installing-and-requiring-express

追伸

terat●ilで同じエラー質問したやりとりみてて安定のググレカス。
このサイトで回答するひとってこういうタイプ多くない?


Viewing all articles
Browse latest Browse all 8902

Trending Articles