呈现子域的ExpressJS问题

时间:2018-12-29 01:39:27

标签: javascript html node.js express web-deployment

我正在写商店,并且渲染方面有问题。

我想拥有/ domain子域,并且正在寻找像tis之类的路线

const CategoryOne = ((req, res) =>{ res.render('shop/category'); }); router.get('/category', CategoryOne);

这是完美的工作方式,但是当我使用子域名类别/鞋子时,我想使用参数鞋在/ category上重定向

const Category = ((req, res) =>{
  const categoryPass = req.params.category;
  res.render('shop/category', {
    category: categoryPass 
  });
});
router.get('/category/:category', Category);

,它不起作用,我应该重定向吗?当我这样做

res.redirect('/category')

那么我没有类别参数

编辑: 到目前为止我所做的:

const CategoryOne = ((req, res) =>{
const passedCategory = req.session.categorypassed;
req.session.categorypassed = undefined;
console.log(passedCategory);
Product.find((err, response) => {
res.render('shop/category', {
  title: 'Test', products: response, category: passedCategory
});
});

});

const Category = ((req, res) =>{
  req.session.categorypassed = req.params.category;
  res.redirect('/category');
});

问题是,当我刷新页面时,我没有此参数,是否可以保存它?

1 个答案:

答案 0 :(得分:1)

一种更好的解决方法是对您的资产使用中央公共目录,并使用绝对路径(例如/assets/images/logo.png)来请求它们,而不是使用相对路径,例如assets/images/logo.png

您可以详细了解相对路径和绝对路径here