Javascript 从localhost:3000/admin到localhost:3000

Javascript 从localhost:3000/admin到localhost:3000,javascript,node.js,express,Javascript,Node.js,Express,我正在构建一个node.js应用程序。我希望管理员成功上传数据后,主页呈现,即从localhost:3000/admin到localhost:3000。我已尝试使用以下代码: router.post('/', (req, res)=>{upload(req, res, function(err) { if (err) { console.log(err); res.render('admin', {msg: err}); }else{ return res.

我正在构建一个node.js应用程序。我希望管理员成功上传数据后,主页呈现,即从
localhost:3000/admin
localhost:3000
。我已尝试使用以下代码:

router.post('/', (req, res)=>{upload(req, res, function(err) {
  if (err) {
    console.log(err);
    res.render('admin', {msg: err});
  }else{
    return res.redirect('index');
  }
}
这是index.js代码:

var express = require('express');
var router = express.Router();

/* GET home page. */
router.get('/', function(req, res, next) {
  res.render('index', { title: 'Express' });
});

module.exports = router;
但是,尽管标题被定义为index.js,并且express routing很好,我还是得到了错误:

ReferenceError:E:\Documents\Computer and Codeing\Playerd\PROJECTS\Catalog\views\index.ejs:4
2| 
3|   
>> 4|     
5|     
6|   
7|   
标题未定义

如果要从服务器发送变量
title
,请更改此行:

res.render('admin', {msg: err});
致:

res.render('admin',{msg:err,title:});

如果要从服务器发送变量
title
,请更改此行:

res.render('admin', {msg: err});
致:

res.render('admin',{msg:err,title:});

“但是,尽管在routes文件夹的index.js文件中定义了标题“defined where?”,但重定向实际起作用了吗?你质疑标题使其听起来好像重定向不起作用我尝试过从重定向更改为呈现,但结果是相同的错误,这是主要问题我想要呈现的页面没有呈现“但尽管标题已定义”在routes文件夹的index.js文件中“定义在何处?”重定向实际起作用吗?你的问题标题听起来好像重定向不起作用我尝试过从重定向更改为渲染,但结果相同,这是我想要呈现的页面没有呈现的主要问题。它肯定会工作,但是为什么我要这样做呢?如果它已经在index.js文件中定义了,那么我想要呈现的是索引页面,而不是管理页面。Ejs是一种模板语言,它将从.Ejs文件呈现。它是从服务器渲染的,而不是从客户端。您只需使用
res.render
选项或其他.ejs文件(包括您的文件)发送变量即可。好的,重定向回主页如何?抱歉,但您应该加载主页的代码。你的主页上也有这样的代码:当然它可以工作,但是当index.js文件中已经定义了它时,我为什么要这样做呢?然后我要呈现的是索引页,而不是管理页。Ejs是一种模板语言,它将从.Ejs文件呈现。它是从服务器渲染的,而不是从客户端。您只需使用
res.render
选项或其他.ejs文件(包括您的文件)发送变量即可。好的,重定向回主页如何?抱歉,但您应该加载主页的代码。您的家也有此代码:
res.render('admin', {msg: err, title: <your title here>});