nodejs 通过post跳转后的页面 无法加载组件页面

新手上路,请多包涵

index.ejs通过post跳转到home.ejs页面后 无法加载组件页面sideMenu
<%include templates/sideMenu.ejs%>(里面处理json数据 修饰页面样式)
报错GET http://localhost:3000/home/1 500 (Internal Server Error)

但是可以加载header.ejs (不包含任何参数)
却css和js无法加载

<!-- index.js -->
var express = require('express');
var router = express.Router();
router.get('/', function(req, res, next) {
  res.render('index', {
    title: 'Express'
  });
});
router.get('/home/:id',function(req,res,next){
    res.render('home',{
      output:req.params.id
    });
})
router.post('/home/submit',function(req,res,next){
    var id = req.body.id;
    res.redirect('/home/'+id);
    res.end('yes')
})
module.exports = router;

<!--index.ejs-->
<!DOCTYPE html>
<html>
<head></head>
<title><%=title%></title>
<body>    
<form action="/home/submit" method="post">
  <div>用户名:<input type="text" name="id"/></div>
  <button type="submit">Submit</button>
</form>    
</body>
</html>

---------------------------------------------------------------------------------------------

  <!-- home.ejs -->
  <header class="main-header" id="nav-header">
      <% include templates/header.ejs %>
  </header>
  <div class="content-wrapper">
      <!--组建中使用data变量 -->
      <% include templates/sideMenu.ejs %>          
      ID:<span><%=output%></span></br>
  </div>
  
   <!--home.js-->
  var express = require('express');
  var router = express.Router();
  var vdata = require('../vdata.json');
    
   /* GET home page. */
   router.get('/home/:id', function(req, res, next) {
     res.render('home', {
          title: 'Express',
          data:vdata});
   });
   module.exports = router;
阅读 2.7k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进