Reactjs NextJS中路由器和链路之间的典型差异

Reactjs NextJS中路由器和链路之间的典型差异,reactjs,react-router,next.js,next-router,react-link,Reactjs,React Router,Next.js,Next Router,React Link,我是NextJS的新手。我想知道next/router和next/link之间的典型变化和用例 我应该在各种场景中使用哪一个?哪个做什么?例如,如果我想加载共享组件或在服务器端呈现的页面之间导航。另外,如果我调用一个带有普通“a”标记的页面,或者使用链接/路由器来实现相同的功能,有什么区别呢 从“下一个/路由器”导入{useRouter} 函数ActiveLink({children,href}){ const router=useRouter() 常量样式={ marginRight:10,

我是NextJS的新手。我想知道next/router和next/link之间的典型变化和用例

我应该在各种场景中使用哪一个?哪个做什么?例如,如果我想加载共享组件或在服务器端呈现的页面之间导航。另外,如果我调用一个带有普通“a”标记的页面,或者使用链接/路由器来实现相同的功能,有什么区别呢

从“下一个/路由器”导入{useRouter}
函数ActiveLink({children,href}){
const router=useRouter()
常量样式={
marginRight:10,
颜色:router.pathname==href?'red':'black',
}
常量handleClick=(e)=>{
e、 预防默认值()
路由器推送(href)
}
返回(
)
}

导出默认的ActiveLink
如果调用带有普通“a”标记的页面或使用链接/路由器来实现相同的功能,有什么区别?

正常
之间的主要区别。因此,一个普通的
标记将通过http请求加载/导航到页面,而路由器和链接将通过客户端加载页面

next/link
不够时,可以使用
next/router
(在组件的函数中),例如,如果需要在渲染新组件之前执行一些操作

所以路由器和链路都有相似的行为,你可以根据你的应用程序需要做什么来选择使用哪一个


两者都将运行数据获取方法(
getServerSideProps
getStaticProps
,和
getInitialProps

如果我调用带有普通“a”标记的页面或使用链接/路由器来实现相同的功能,有什么区别?

正常
之间的主要区别。因此,一个普通的
标记将通过http请求加载/导航到页面,而路由器和链接将通过客户端加载页面

next/link
不够时,可以使用
next/router
(在组件的函数中),例如,如果需要在渲染新组件之前执行一些操作

所以路由器和链路都有相似的行为,你可以根据你的应用程序需要做什么来选择使用哪一个


两者都将运行数据获取方法(
getServerSideProps
getStaticProps
,和
getInitialProps

链接只是路由器的一个抽象,使用
链接
组件比每次手动构建链接容易得多。

链接只是路由器的一个抽象,使用
链接
组件要比每次手动构建链接容易得多