登録ページを作成していますが、送信後に問題が発生しました。ページはリダイレクトされず、ページを更新するまでページが読み込まれ続けます。 /auth/register にルートしてメッセージを表示したいのですが
server.js ページ
var express = require("express");
var mysql = require("mysql");
var app = express();
var path = require("path");
var port = 8080;
app.use(express.urlencoded({extended:false}));
app.use(express.json());
app.set("view engine" , "hbs");
const routes = require("./routes/register.js");
app.use("/" ,routes);
app.use("/auth" , require("./routes/auth.js"));
app.listen(port);
index.hbs
<form action="/auth/register" method="POST">
Name : <input type="text" name="name">
Mobile :<input type="text" name="mobile">
Password :<input type="password" name="password">
<button class="saveBtn finModBtn" id="regConfirm">Confirm</button>
<button class="closeBtn finModBtn" id="regCancel">Cancel</button>
</form>
ページのルーティング
auth.js
送信後、このページにメッセージが表示されるようにします:
const express = require("express");
const router = express.Router();
var authController = require("../controller/auth.js");
router.post("/register" , function(req,res){
authController.register;
});
module.exports = router;
コントローラ ページ
auth.js コントローラー ファイル
exports.register = function(req,res){
console.log(req.body);
res.send("form submitted");
}
ルーティングの auth.js ファイルに間違いがあると思うのですが、原因がわかりません。
------------------------
この変更は / で試すことができますルート/auth.js
authController.register(req,res);
2
役に立ちました、ありがとう。しかし、私が書いたコードが機能しなかった理由を教えてもらえますか。 @Abhishoya Lunavat
– マニッシュ・パンディ
2020 年 9 月 6 日 10:30
あなたはそうしていませんでした'関数を呼び出すかっこを使用したり、消費される req、res オブジェクトを渡したりしませんでした。 JavaScript での関数の動作の詳細を確認するには、このリンクが役立ちます。
– アビショヤ ルナバット
2020 年 9 月 6 日 12:14