前端国际化实战
为什么需要国际化
在拓展海外市场时,如果所有文本都硬编码在代码里,应用将难以被本地用户理解。以下是硬编码的反面教材。
反面教材
// 反面教材:硬编码文本
function App() {
return (
<div>
<h1>欢迎来到我的网站</h1>
<p>这是一个示例应用</p>
<button>点击我</button>
<div>
<h2>产品列表</h2>
<ul>
<li>产品 1</li>
<li>产品 2</li>
<li>产品 3</li>
</ul>
</div>
</div>
);
}
export default App;
正确姿势
1. i18next
配置
// i18n.js
import i18n ;
{ initReactI18next } ;
resources = {
: {
: {
: ,
: ,
: ,
: ,
: ,
: ,
:
}
},
: {
: {
: ,
: ,
: ,
: ,
: ,
: ,
:
}
}
};
i18n
.(initReactI18next)
.({
resources,
: ,
: ,
: {
:
}
});
i18n;

