【发布时间】:2022-01-03 11:53:06
【问题描述】:
在开发带有翻译的 PWA 之前,我遇到了一个从未遇到过的问题。
我声明我一直且仅在 Vue、React、Angular 中开发多语言应用程序,目前我正在使用 Svelte。
我一直使用简单的做法,使用 json 字典进行翻译,并将 Lang 变量发送到服务器以获取所需语言(在 Headers 中设置)的数据。
所有这一切都很好,直到我遇到需要在 SSR 期间在登陆页面时立即接收所请求内容的翻译元标记。但是如您所知,在这个阶段无法访问 localStorage 或类似内容,这就是为什么我无法获取所请求语言的元标记,因为我无法访问浏览器中设置的变量。在这种情况下你会如何行动?我对寻找特定框架的特定解决方案不感兴趣,而是寻找一种可能的技术。
对于 Svelte,我找到了这个半解决方案,它允许我从地址中获取 slug/lang/,并在渲染阶段在服务器中使用它,以便获取已经在服务器端翻译的数据。
我可以认为这是一个好的解决方案吗?
【问题讨论】:
标签: reactjs angular progressive-web-apps server-side-rendering svelte