Node.js 错误:Route.post()需要回调函数,但得到了一个[object Undefined]此问题已经存在,但我仍然无法找到它
下面分别给出admin.js和products.jsNode.js 错误:Route.post()需要回调函数,但得到了一个[object Undefined]此问题已经存在,但我仍然无法找到它,node.js,Node.js,下面分别给出admin.js和products.js const express=require('express'); const path=require('path'); const router=express.Router(); const productsController=require('../controllers/products.js'); router.get('/addproduct',productsController.getAddproduct); router
const express=require('express');
const path=require('path');
const router=express.Router();
const productsController=require('../controllers/products.js');
router.get('/addproduct',productsController.getAddproduct);
router.post('/addproduct',productsController.postAddProduct);
module.exports=router;
上面的代码是product.js代码片段
我在上面的代码片段中找不到错误您能同时显示products.js文件的内容吗?'const products=[];exports.getAddproduct=(req,res,next)=>{res.render('add-product.ejs',{pageTitle:'addproduct',path:'/admin/addproduct',prods:products});};exports.postAddproduct=(req,res,next)=>{products.push({title:req.body.title});res.redirect('/');};exports.getproducts=(req,res,next)=>{res.render('shop.ejs',{prods:products,pageTitle:'shop',path:'/'});};'请编辑您的原始问题并将其包含在那里。您现在已更正admin.js中的
postAddProduct
与products.js中的postAddProduct
不匹配
const products=[];
exports.getAddproduct=(req,res,next) => {
res.render('add-product.ejs', {
pageTitle:'Add product',
path:'/admin/addproduct',
prods:products
});
};
exports.postAddproduct=(req,res,next )=> {
products.push({ title:req.body.title });
res.redirect('/');
};
exports.getproducts=(req,res,next) => {
res.render('shop.ejs', {
prods:products,
pageTitle:'shop',
path:'/'
});
};