我有一个应用程序使用 CRA 做出反应,我正在尝试使用 next 将其转换为 SSR 应用程序。所以,由于很少,我唯一改变的是:
但是当我点击链接时,我很难刷新。这是生成链接的内容:
<Link href={post.meta.slug}>
<a>{post.title}</a>
</Link>;
Run Code Online (Sandbox Code Playgroud)
我也尝试过href={post.meta.slug} as={post.meta.slug}
。
在我的页面目录中,我有:
这就是我获取帖子的方式[slug].jsx
:
const PostPage = ({ post }) => {
return <Base>{post ? <Post post={post} /> : null}</Base>;
};
PostPage.propTypes = {
post: PropTypes.object,
};
PostPage.getInitialProps = async ({ query }) => {
const post = await getPostBySlug(query.slug);
return { post };
};
Run Code Online (Sandbox Code Playgroud)
到目前为止,我无法识别错误。
这是完整的代码:https : //gitlab.com/flakesrc/blog-webstation-next
如果要克隆:
git clone https://gitlab.com/flakesrc/blog-webstation-next.git
cd blog-webstation-next
npm install
npm run dev
Run Code Online (Sandbox Code Playgroud)
你试过这种格式Link
吗?
<Link href='/[slug]' as={`/${post.meta.slug}`}>
<a>{post.title}</a>
</Link>
Run Code Online (Sandbox Code Playgroud)
这是动态页面的这种类型路由的一个很好的例子,以及文档中的部分,也说明了这一点。
归档时间: |
|
查看次数: |
1367 次 |
最近记录: |