【发布时间】:2019-04-20 08:46:09
【问题描述】:
我按照 Next.js 中的这个例子来了解如何create Server Side Support for Clean URLs 但这个例子只支持传递一个参数
一切都很好,我还在 github 上找到了这个关于如何 add multiple parameters 到 Next.js 的路由。
server.get('/question/:id/:subject', (req, res) => {
const actualPage = '/question'
const mergedQuery = Object.assign({}, req.query, req.params)
app.render(req, res, actualPage, mergedQuery)})
来自组件的链接看起来像这样
<Link as={`/question?id=${questionId}&subject=${subject}`} href={`/question?id=${questionId}&subject=${subject}`} ><a>{question}</a></Link>
这也很好用。 我的挑战是,当我尝试如下所示屏蔽 url 时,当我刷新页面时,我得到了 404 页面。
server.get('/q/:id/:subject', (req, res) => {
const actualPage = '/question'
const mergedQuery = Object.assign({}, req.query, req.params)
app.render(req, res, actualPage, mergedQuery)})
组件中的链接
<Link as={`/q?id=${questionId}&subject=${subject}`} href={`/question?id=${questionId}&subject=${subject}`} ><a>{question}</a></Link>
【问题讨论】: