国际化方案——精选推荐.pdfVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
国际化⽅案 标签:多语⾔ i18n iplas #背景 应泰⽅要求,运营系统、⽹上商城以及移动端服务平台等项⽬都要做国际化,⽀持英⽂、泰⽂等多国语⾔。故研讨国际化⽅案对项⽬进⾏国 际化改造。 ##1.后端 关键:使⽤java.util.Locale类判断地区,处理国际化差异 项⽬ 解决⽅案 处理成zh_CN.properties(中⽂需要处理ASCII编码格式)和th_TH.properties版本,使⽤java.util.ResourceBundle根据地区读 静态配置⽂件 取 错误提⽰ 中⽂翻译成泰⽂,处理成中⽂和泰⽂2个错误枚举类,根据地区选择⼀个枚举类 ⽇期 使⽤java.util.DateFormat类及其⼦类SimpleDateFormat根据地区处理 数字、货币、百分 使⽤java.util.NumberFormat类根据地区处理 ⽐ ##2.前端 关键:perties 项⽬ 解决⽅案 配置⽂件 配置*_perties 国际字典,⽤以多国语⾔翻译 静态⽂字 使⽤*i18n国际化插件匹配字典重新赋值(预估⼯作量相当⼤) 动态数据中的⽂字 后端处理后发送到前端 样式 不同语⾔⽂案长度不⼀样造成的样式错乱,对样式要做适配性修改(预估⼯作量相当⼤),先统⼀处理英⽂版本,再适配其它语⾔ 图⽚ 例如帮助指引等,替换泰⽂版新图 第三⽅服务SDK 运营系统中暂时没有 数字、货币单位 使⽤阿拉伯数字,货币单位使⽤฿,要增加货币格式化⼯具函数处理 ⽇期、时间 使⽤泰国当地时间 npm install di18n-translate ###使⽤demo const DI18n = require(di18n-translate) const di18n = new DI18n({ locale: en, // 语⾔环境 isReplace: false, // 是否开启运⾏时功能(适⽤于没有使⽤任何构建⼯具开发流程) messages: { // 语⾔映射表 en: { 你好: Hello, {xl} }, zh: { 你好: 你好, {xl} } } }) di18n有2个翻译⽅法: $t, $html // 带参数 di18n.$t(你好, {person: xl}) // 输出 Hello, xl 字符串拼接的dom中使⽤locale表⽰语⾔环境,t()标识需要翻译的字段,⽤法如下: let tpl = div class=wrapper ${locale} + img src=/images/${locale}/test.png + p$t(你好)/p + /div let str = di18n.$html(tpl) // 字符串替换后输出字符串str: div class=wrapper en img src=/images/en/test.png pHello/p /div // 最后再将这个dom字符串传⼊到页⾯当中去 document.querySelector(.box-wrapper).innerHTML = str #运营系统国际化改造实战 相信现在除了最传统的web前端项⽬外,⼤多数的前端开发都采⽤组件化的模式,⽐如⼩编公司使⽤的polymer、Vue框架,都封装有⼤量 的组件⽅便开发使⽤。在进⾏国际化时候,为尽可能的的不改变开发模式且减少⼯作量,将国际化翻译的东西封装在组件的最底层,在组件 内部进⾏改造。 ##以运营系统为例: 地址栏添加language=‘zh‘属性⽤以切换区分语⾔,如/demo?language=‘zh‘ 配置语⾔字典,实例化di18n函数对象。 (⽅法写在o-base-behavior.html中,⽅便调⽤) const di18n = new DI18n({ loc

文档评论(0)

千帆起航 + 关注
实名认证
文档贡献者

走过路过,不要错过!

1亿VIP精品文档

相关文档