react国际化reactintl的使用_第1页
react国际化reactintl的使用_第2页
react国际化reactintl的使用_第3页
react国际化reactintl的使用_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、react国际化react-in的使用reac怎么实现国际化?react-in插件提供了一套实现reac国际化的方法,具体实现如下一搭建reac环境和下载相应插件默认你已经安装了ne如果没有装的百度装下这里不再细讲利用react官方脚手架搭建react项目,已经存在有的react项目也可忽略搭建这步;然后下载相关依赖react-intlnpxcreate-react-appreact-intl-demonpmireact-intl-S等待下载完成找到项目根目录下的r改件夹在里面新建一个叫lcal的文件夹存放语言包设置的文件;这里只实现中英文切换,后续其他语言的都是一样的操作7raeactrea

2、ct-intl-demonodemodulespubliczerr7localecn.jsenjsJSintl.js#App.cssJSAppjsJSApp.test.jsindexesindexjslogo.svgJSreportWebVitalsjssetupTests.js二写相关的配置文件0gitignorerteactentetrjrtntlrierr包裹在需要&rtainntetrrtr中文包cn找到lcal的intl文件引入相关的插件reactejsonM组件的最外层,和react-re的ri样让组件和组件内的子组件都能使用react-int提供的a和方法这里使用的是ceee简单

3、的在根目录下创建一个来控制语言的全局状态维护/RHAnikll:mrlKAonstInter=(props)=自身提供的S等获取默认的语言设置也可以配合一些全局状态管理进行结合使用如或者onststate=useContext(mainContext)onstchooseLocale=(val)=let_val=val|navigator.language.split(switch(_val)caseen:casezh:S获取.etchildren=props包裹子组件让子组件共享的P实现多语言SSPo.jSonStSta开始Swi切换xpon.jSonStStaSSwiS(S貝录下新建一个)

4、StayPSPPSSpatchSSSPProPS.children三在Appjs引入相关文件并使用ppimport./App.css;importContextProviderfrom./reduceimportInterfrom./locale/intlimportViewfrom./viewsfunctionApp()return(exportdefaultApp四新建views目录下面使用相关的插件和ap实现国际化view新建一个ie文件试试效果eivivaeessaeisaiviviaeaivattedMessageaeessaeiswiattedMessageportreact,us

5、eContextfromreactportmaintex./reducepormattedMessagefromreact-ctionIndex()nstdispatch,state=useContext(mainstlocale=statenstchangeLan改变状态里的语言进行切换ispatctype:locale:localeeivivexportdefaultInde最终目录红框为新增iv7raeactreact-intl-demo12131415161718192021222324252627282930 node_modules publicxzsrc#App.cssJSAppjsJSApp.testjs#indexxssJSindexjs*logo.svgJSreducerjsreportWebVitalsJsJ5setupTests.js0.gitignorepackage-lockjsonp日匚kagejsonREADMEmd就这样一个简单的react国际化就完成了!可以去试一试,如果项目有需要也可以按照这种移植进去本次的demo已上传GitHub:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论