React Native多语言
https://www.jianshu.com/p/4dc5612854eb
可以用react-native-i18n
执行命令安装:
npm i react-native-i18n --save
在js目录下新建多语言文件,比如说需要支持英文和中文,那么就建两个文件en.js和zh.js
文件内容为:
en.js
export default {
welcome:{
welcome:"welcome to Beijing"
}
}
zh.js
export default {
welcome:{
welcome:"欢迎来到北京"
}
}
然后建一个国际化文件,比如叫 i18n.js
i18n.js
import I18n from 'react-native-i18n';
import en from './en';//en为en.js的路径
import zh from './zh';
I18n.defaultLocale = 'zh'; //设置默认的语言
I18n.fallback = true; //设置
I18n.locale = 'zh'; //设置当前的语言
I18n.translations = { //支持的语言列表
en,
zh
};
export function strings(name, params = {}) {//params默认为json类型
return I18n.t(name, params);
}
export function setLanguage(lan) {
I18n.locale = lan;
}
export default I18n;
然后在其他js文件中,如下引用:
import {strings,setLanguage} from './i18n';//i18n.js文件的位置
<Text>{strings('welcome.welcome')}<Text>//如果是中文输出就会是“欢迎来到北京”
在这里调用 setLanguage('en')就会切换语言到英文,不过在当前页面的话需要调用this.setState刷新一下当前页面。
React Native多语言的更多相关文章
- [转]React Native 语言基础之ES6
React Native 是基于 React 这个前端框架来构建native app的架构.React Native基于ES6(即ECMAScript2015)语言进行开发的. JS的组成 1) 核心 ...
- windows 7下React Native环境配置
React Native 是 Facebook 推出的一个用 Java 语言就能同时编写 ios,android,以及后台的一项技术,它可以做到实时热更新 .FaceBook 也号称这们技术是 “Le ...
- React Native:使用 JavaScript 构建原生应用
[转载] 本篇为联合翻译,译者:寸志,范洪春,kmokidd,姜天意 数月前,Facebook 对外宣布了正在开发的 React Native 框架,这个框架允许你使用 JavaScript 开发原生 ...
- 配置React Native环境
一. 安装Homebrew: “Homebrew installs the stuff you need that Apple didn’t.——Homebrew OS X 更完整”. Homebr ...
- React Native Changed the World? or Nothing.
RN是一个awesome的技术, facebook很有想法的团队创造出一项新的技术改变了native开发界. 但是RN本身又疑点重重, RN是为了解决什么问题而存在的? 在诞生了一年后, RN又解决了 ...
- 30天React Native从零到IOS/Android双平台发布总结
前言 本人有近十年的技术背景,除了APP开发之外对后端.前端等都比较熟悉,近期做一个APP项目需要IOS.Android两个平台都需要,只能硬着头皮上.其实很早就想开发APP也很早就接触Android ...
- React Native开发入门
目录: 一.前言 二.什么是React Native 三.开发环境搭建 四.预备知识 五.最简单的React Native小程序 六.总结 七.参考资料 一.前言 虽然只是简单的了解了一下Reac ...
- React Native 开发之 (01) 配置开发环境
一 React Native React Native 是由Facebook发布的开源框架,着力于提高多平台开发的开发效率 —— 仅需学习一次,编写任何平台.(Learn once, write an ...
- React Native 学习-01
React Native 学习 (学习版本 0.39) 一.环境配置 二.IDE选择 webstorm 1.webstorm配置 ①.首先是可以选择使用汉化包汉化.eu68 ②.安装插件和外部库. 由 ...
随机推荐
- kafka 生产消费原理详解
Kafka日志及Topic数据清理 https://blog.csdn.net/qiaqia609/article/details/78899298 Kafka--Consumer消费者 pastin ...
- linux 为什么要关闭selinux
一般安装linux课程时都把SELinux与iptables安排在后面,使初学者配置linux服务器时不成功,却没有头绪,那是因为在RedHat linux操作系统中默认开启了防火墙,SELinux也 ...
- Socket拆包和解包
对于基于TCP开发的通讯程序,有个很重要的问题需要解决,就是封包和拆包.下面就针对这个问题谈谈我的想法,抛砖引玉.若有不对,不妥之处,恳求大家指正.在此先谢过大家了. 一.为什么基于TCP的通讯程序需 ...
- MySQL 之mydumper安装详解
方法一: 安装依赖包: 1 yum install glib2-devel mysql-devel zlib-devel pcre-devel openssl-devel cmake make 下载二 ...
- Spark操作实战
1. local模式 $SPARK_HOME/bin/spark-shell --master local import org.apache.log4j.{Level,Logger} // 导入ja ...
- Javascript异步编程的4种方法(阮一峰)
转载: http://www.ruanyifeng.com/blog/2012/12/asynchronous%EF%BC%BFjavascript.html 你可能知道,Javascript语言的执 ...
- angularjs路由相关知识
angular.module('app').config(['$stateProvider','$urlRouterProvider',function($stateProvider,$urlRout ...
- 1.spring boot起步之Hello World【从零开始学Spring Boot】
[视频&交流平台] àSpringBoot视频 http://study.163.com/course/introduction.htm?courseId=1004329008&utm ...
- [UnityShader基础]02.深度测试 & 深度写入
参考链接: https://blog.csdn.net/v_xchen_v/article/details/79380222 前面说到了渲染队列,对于两个不透明的物体A和B,它们处于同一个渲染队列中. ...
- asp 月末 月初
上个月第一天:<%=dateadd("m",-1,year(date)&"-"&month(date)&"-1" ...