国际化
i18n 全称 Internationalization,也就 是国际化的意思,因为单词太长,所以中间的 18 个字母被缩写为 18,再加上开头和结尾的字母,就组成了 i18n
文案展示
文案的国际化实质上是 编译时或运行时的 key - value 替换 在业务文案渲染时用方法包裹,动态替换为字典中的对应文案,不再采用原先硬写的方式。任何需要被展示到页面上的前端文案,都被方法包裹。
render() {
return (<span>下一步</span>)
}
// env zh_CN
// dict { 'common.btn.net': '下一步' }
render() {
return (<span>TEXT('common.btn.next')</span>)
}
由于各个国家与地区的语境差异,像「20000」这样的数字会被格式化成 「20,000」,摄氏度会转华氏度等等。 因此静态内容的替换不仅仅只是 key - value 的直接映射,在替换的过程中还需要有额外的格式化能力。