首页 > 解决方案 > Express Node.js 路由问题

问题描述

我正在使用 Express 和 NodeJS 构建网站。但是我正面临这个路由问题。这是我在 app.js 中使用的路线,它需要一个参数。

app.get(['/purchase/:purchaseID',], getPurchasePage)

该路线将链接到:

res.render('purchase.ejs' , {
        title: "Purchase Order :" + req.param.referenceID,
        referenceID : req.param.referenceID
    })

但是,在通过例如(localhost:2000/purchase/123456)访问链接时,页面会加载。但是,无法加载所有外部文件 (CSS/JavaScript/JQuery)。

这使我认为这行代码发生了一些事情:

app.use(express.static(path.join(__dirname, 'public')));

我尝试摆弄我的路线,并设法让它完全与网站加载正常工作

app.get(['/purchase?id=:purchaseID',], getPurchasePage)

但是,我真的很想使用我提到的第一种方法。想在上面得到一些帮助。

谢谢!

标签: javascriptnode.jsexpressroutes

解决方案


我试过了,它有效

头.ejs

<link rel="stylesheet" href="/js/app.js">

应用程序.js

app.use(express.static(path.join(__dirname, 'public')));

也许您使用的是相对路径,例如 js/jquery.js 而不是 /js/jquery.js


推荐阅读