これが私のメインファイルindex.jsです
リーリーこれが私のルートです
リーリーこれは私のコントローラー ファイルです
リーリーこれは私のモデル ファイルです
リーリーnodemon と mongoose をインストールしましたが、「npm run dev」コマンドを書いた後もターミナルでエラーが発生します
[email protected] 開発者 Nodemon インデックス.js
[ノードモン] 2.0.22
[nodemon] いつでも再起動できます。rs
と入力してください。
[nodemon] 監視パス: .
[nodemon] 拡張機能を表示: js、mjs、json
[nodemon] nodeindex.js
を起動します。
C:\Users\SWETTA\OneDrive\Desktop\blog_backend\node_modules\express\lib\router\route.js:211
newError(メッセージ)をスローします。
^
エラー: Route.post() はコールバック関数を予期していましたが、[オブジェクトが未定義] を受け取りました ルート上で。 [投稿どおり] (C:\Users\SWETTA\OneDrive\Desktop\blog_backend\node_modules\express\lib\router\route.js:211:15) プロトタイプで。 [投稿どおり] (C:\Users\SWETTA\OneDrive\Desktop\blog_backend\node_modules\express\lib\router\index.js:521:19) オブジェクトで。 (C:\Users\SWETTA\OneDrive\Desktop\blog_backend\routes\blogRoutes.js:6:8) Module._compile 内 (node:internal/modules/cjs/loader:1254:14) Module._extensions..js 内 (node:internal/modules/cjs/loader:1308:10) Module.load(node:internal/modules/cjs/loader:1117:32) で Module._load 内 (ノード:内部/モジュール/cjs/loader:958:12) Module.require 内 (node:internal/modules/cjs/loader:1141:19) 必要に応じて (ノード:内部/モジュール/cjs/ヘルパー:110:18) オブジェクトで。 (C:\Users\SWETTA\OneDrive\Desktop\blog_backend\index.js:9:20)
解決策は何ですか?
問題はコントローラー ファイルにあり、post という関数をエクスポートし、それを createBlog としてルート ファイルにインポートしています。コードを修正するには、コントローラーを更新し、関数の名前を createBlog :
に変更する必要があります。 リーリールーターのコードに小さなバグを見つけました。
コントローラー内の関数を
post
としてエクスポートし、ルーターにcreateBlog
としてインポートします。そして、コントローラーはcreateBlog
という名前のものをエクスポートしないため、問題が発生します。ルーターのコードを次のように変更するだけです:
リーリー