【发布时间】:2021-06-17 07:24:32
【问题描述】:
我在 /pages/index.js 中有以下内容:
export default function Home() {
return (
<div className={styles.grid_container}>
<NavBar/>
<div className={styles.center_pane}>
<Overview/>
</div>
<div className={styles.right_pane}>
<h2>Right Pane</h2>
</div>
<Footer/>
</div>
)
}
它渲染一切正常,但我需要一些参数化 <Overview/> 元素的方法,以便根据用户从 <Navbar> 导航到的页面,它会渲染相应的组件。
我正在考虑的选项只是为每个链接创建一个页面,但似乎效率很低。
这个问题看起来很相似,但从未得到答案:Nextjs: render content based on sidebar choice
任何帮助将不胜感激,谢谢。
【问题讨论】:
-
点击侧边栏的行为是什么?改变状态,改变路径?
-
@dna 它改变了路径,但我不认为它必须是那样。
-
如果您更改页面,您必须创建另一个页面。您可以使用布局组件优化代码并仅更改每个页面中的子项,否则您可以改用查询参数并根据条件呈现组件。购买 keep It simple 更改页面和更改组件
标签: javascript next.js