在 nextjs 中更改语言时如何使用 next-i18next 更改 <Html "lang"/>?
how to change <Html "lang"/> with next-i18next when language changed in nextjs?
我正在为多语言网站使用 next-i18next,所有组件都运行良好,但我不知道如何更改 _document.js 文件中 html 标签的语言?
这是我的解决方案。
class MyDocument extends Document {
static async getInitialProps(ctx) {
const initialProps = await Document.getInitialProps(ctx)
const language = ctx.req.language
return { ...initialProps, language }
}
render() {
return (
<Html lang={this.props.language}>
<Head />
<body>
<Main />
<NextScript />
</body>
</Html>
)
}
}
我正在为多语言网站使用 next-i18next,所有组件都运行良好,但我不知道如何更改 _document.js 文件中 html 标签的语言?
这是我的解决方案。
class MyDocument extends Document {
static async getInitialProps(ctx) {
const initialProps = await Document.getInitialProps(ctx)
const language = ctx.req.language
return { ...initialProps, language }
}
render() {
return (
<Html lang={this.props.language}>
<Head />
<body>
<Main />
<NextScript />
</body>
</Html>
)
}
}