javascript - Next.js 具有 i18n 和共享组件的多区域
问题描述
我将 Next.js 的多区域功能与博客和 Web 应用程序一起使用,因此我可以独立开发和部署这两个应用程序。按照他们的with zone 示例进行设置很容易,我已经在 port 设置了一个博客应用程序,在 port 设置了4200
一个 web 应用程序3000
,这工作正常。不幸的是,我遇到了一些在他们的文档中没有描述的问题(据我所知)。
首先,我还使用了他们的国际化路由,它运行良好,但是当转到我的博客应用程序时,它会将语言环境附加到 URL 的末尾。想象一下我打开localhost:3000/en
并导航到博客应用程序,然后它将显示localhost:4200/blog/en
而不是localhost:4200/en/blog
. 有没有办法解决这个问题(例如通过使用重写)?
其次,我在一个 monorepo 中工作,并且在两个应用程序之间共享组件,例如页眉和页脚,这显然包括导航。当我在博客上并想要导航到例如/about
页面时,它显然会导航到localhost:4200/blog/about
而不是localhost:3000/about
. 一种解决方案是检查导航组件中的基本路径,然后将基本路径localhost:3000
添加到href
ifblog
之前,但这会刷新整个应用程序并且不会导致流畅的导航,因此它并不是很理想。我还能做些什么吗?
似乎多区域功能实际上只适用于非常小的应用程序,或者我错过了一些东西。似乎其他人也有同样的问题,如果我遗漏了什么,那么文档肯定至少是。
解决方案
推荐阅读
- android - java.lang.NullPointerException:尝试在 Android 10 上调用虚拟方法“java.lang.String java.io.File.getName()”
- python - 来自给定分布函数的随机数生成器
- azure - 如何使用 Azure Function 在 Azure 文件共享中解压缩文件?
- python - 如何计算任何 CSV 数据的采样率?
- ios - 如何更改状态栏和滑动栏部分的颜色?
- java - 使用spring验证:在包含@valid和验证注释的restful服务中没有返回消息
- wordpress - 添加卷后 Docker 速度很慢(Wordpress)
- erlang - 为什么 kerl 不支持 HiPe for Linux?
- macos-catalina - Mac Catalina 上的 Mamp-PRO 6.x 无法再通过我的网站访问文件夹
- javascript - JQuery 自动提交在 Safari 中不起作用