Я новичок в Next.js. У меня проблема с тем, что http://localhost:3000
не работает при использовании маршрутизации на стороне клиента, но загружается при обновлении.
Мой Header.js
файл, которыйпоказывает навигацию
import Link from 'next/link'
const Header = () => (
<div>
<Link href='/'>
<a style={linkStyle}>Home</a>
</Link>
<Link href='/about'>
<a style={linkStyle}>About</a>
</Link>
<Link href='/listing'>
<a style={linkStyle}>Search</a>
</Link>
</div>
)
export default Header
, затем на server.js
У меня есть почти коды по умолчанию из Next.js
const express = require('express')
const next = require('next')
const dev = process.env.NODE_ENV !== 'production'
const app = next({ dev })
const handle = app.getRequestHandler()
app.prepare().then(() => {
const server = express()
server.get('/listing/:id', (req,res) => {
const actualPage = '/listing'
const queryParams = {
id: req.params.id
}
app.render(req, res, actualPage, queryParams)
})
server.get('*', (req,res) => {
return handle(req, res)
})
server.listen(3000, (err) => {
if (err)
throw err
console.log('> Ready on http://localhost:3000')
})
}).catch((ex) => {
console.error(ex.stack)
process.exit(1)
})
my /about
и /listing
страница работает, и если я использую /nonexistance-url
, она будет return 404
.Однако я не могу ссылаться на стороне клиента на /