React Intl

React 组件
授权协议 Apache
开发语言 JavaScript
所属分类 Web应用开发、 常用JavaScript包
软件类型 开源软件
地区 不详
投 递 者 鲜于璞瑜
操作系统 跨平台
开源组织 Yahoo
适用人群 未知
 软件概览

React Intl 提供了一个 React 组件和用于国际化 React Web 应用的 Mixin。它提供一个格式化日期、数字、字符串消息的描述方式。

示例代码:

var IntlMixin         = ReactIntl.IntlMixin;
var FormattedMessage  = ReactIntl.FormattedMessage;
var FormattedRelative = ReactIntl.FormattedRelative;
var PostMeta = React.createClass({
    mixins: [IntlMixin],    
    render: function () {        
       return (            
   <FormattedMessage
                message={this.getIntlMessage('post.meta')}
                num={this.props.post.comments.length}
                ago={<FormattedRelative value={this.props.post.date} />} />
        );
    }
});var post = {
    date    : 1422046290531,
    comments: [/*...*/]
};var intlData = {
    locales : ['en-US'],
    messages: {
        post: {
            meta: 'Posted {ago}, {num, plural, one{# comment} other{# comments}}'
        }
    }
};

React.render(    <PostMeta post={post} {...intlData} />,    
document.getElementById('container')
);
  • 场景: 系统要实现多语言支持,在系统顶部配置语言菜单,默认为中文,用户选择其他语种后,界面的固定展示信息切換到其他语种。 参考:在 React 项目中使用 React-intl 实现多语言支持 经过多方面的考察,决定选择较为成熟的库react-intl来实现系统多语言配置。 使用步骤 1.安装react-intl npm install react-intl --save 注意: 为了兼容Saf

  • react IntL的用途 : React项目国际化,react-intl 这个库提供了针对组件、日期、数字、字符串等多种国际化方法 使用 这里的版本为版本,高版本的用法似乎变了 目前React Intl是FormatJS的一部分,它通过其组件和API提供到React的绑定 将不同语言的翻译文件放在各自的js文件中,同一处文本的多种语言翻译使用相同的key //en_US.js const en_

  • 最近在react项目中需要解决语言国际化的问题,查看了很多资料最后选中react-intl这个库来进行处理,下面主要简述一下react-intl的使用方法以及一些注意事项 react-intl主要有两种使用方法 通过使用react-intl提供的组件来进行国际化语言匹配 通过使用react-intl提供的api来进行国际化语言匹配 官方文档推荐使用组件这种方法 下面为具体使用 (1). 安装rea

  • react-intl是一个Yahoo公司出品的用于react app国际化的组件,提供了用于格式化日期、数字和字符串的API、复数和处理翻译。 使用示例 首先新建语言包,en-US.json文件用于书写英文名词、zh-CN用于书写中文简体名词。 en-US.json文件示例: { "HELLO_WORLD": "Hello World!" } zh-CN.json文件示例: { "

  • 使用 react-intl 实现 React 组件国际化 一、首先在项目中安装react-intl: npm install react-intl --save 二、然后在项目最外层的app.jsx文件中添加以下内容: // 多语言 import {ConfigProvider, message} from 'antd'; import {IntlProvider, addLocaleData}

  • 首先 下载导入插件 react-intl npm install react-intl@2 -S 注意: 在这里说下,网上搜了很多都没说下载2.x版本的,现在下载的是3.x的版本,结果被这个版本坑了好久,各种报错,大家下载的时候注意了 我是在路由页面开始的,用法跟redux差不多,需要用 IntlProvider 组件把根组件包裹起来 // IndexLayout.js import {addLo

  • antd/antd-mobile 国际化方案 国际化方案概述 前端国际化详解、举例 国际化资源文件管理 项目之间、开发者与翻译者之间的协作 国际化规范附录 扩展阅读 国际化方案概述 国际化是一个看似简单,实则非常复杂的领域,实际进行国际化工作时,大家会发现它往往会涉及很多内容: 前端国际化 服务端国际化 国际化资源文件管理 项目之间、开发者与翻译者之间如何协作 而且,国际化方案往往与具体的技术栈是

  • [react] React Intl是什么原理? 实现原理和react-redux的实现原理类似,最外层包一个Provider,利用getChildContext,将intlConfigPropTypes存起来,在FormattedMessage、FormattedNumber等组件或者调用injectIntl生成的高阶组件中使用,来完成国际化的。 使用过程也非常简单,和react-redux的使

  • 最近的项目中有国际化的需求,经过调研之后决定使用react-intl进行。特地记录一下开发中需要注意的点及踩过的坑。 1.在class组件中如何使用以及ts类型的声明 通常在函数组件中我们直接通过useIntl这个钩子函数来使用,但是在class组件中是没法使用钩子函数的。这个时候就需要用到react-intl提供的另外一个方法injectIntl。具体使用方法如下 // 定义的props要继承r

 相关资料
  • 使用组件的目的就是通过构建模块化的组件,相互组合组件最后组装成一个复杂的应用。 在 React 组件中要包含其他组件作为子组件,只需要把组件当作一个 DOM 元素引入就可以了。 一个例子:一个显示用户头像的组件 Avatar 包含两个子组件 ProfilePic 显示用户头像和 ProfileLink 显示用户链接: import React from 'react'; import { rend

  • 英文原文:http://emberjs.com/guides/components/defining-a-component/ 为了定义一个组件,需要先创建一个名字以components/开始的模板。例如:如果需要定义一个新组建{{blog-post}},需要创建components/blog-post模板。 注意: 组件名必须包含'-'。因此blog-post是一个合法的命名,而post则不是。

  • 了解如何跨文档使用组件,以提高各工作流程的工作效率。 作为一名设计人员,您经常会创建一些在整个设计中重复出现的主要元素,如导航栏或按钮。但是,必须根据上下文或布局来自定义元素实例并非易事。在此情况下,您往往最终会创建同一基础元素的多个版本,这会使您的设计维护变得困难得多。 组件(以前称为符号)是具有无与伦比的灵活性的设计元素,可帮助您创建和维护重复元素(如按钮),同时针对不同的上下文和布局更改该按

  • 结构 组件是对视图的一部分进行封装,以方便组织代码和重用。 任何具有 view 方法的 JavaScript 对象都是 Mithril 组件。组件可以用过 m() 函数调用: var Example = { view: function() { return m("div", "Hello") } } m(Example) // 等效 HTML // <div>Hello</d

  • 底部动作条 按钮 按钮:浮动操作按钮 卡片 纸片 数据表格 提示框 分隔线 网格 列表 列表控制 菜单 选择器 进度和动态 选择控制 滑块 Snackbars 与 Toasts 副标题 开关 Tabs 文本框 工具提示

  • 页面往往有不少重复的元素,这时可以将这些元素抽离为独立的、可复用的部件,我们将这些部件称为组件。组件在概念上类似于 JavaScript 函数,它接收任意的参数(组件的参数称为“props”),然后返回一个可以被渲染的 Rax 元素。下面简单介绍组件的基本使用。 定义组件 有两种方式来定义组件。最简单和推荐的做法是使用 JavaScript 函数来定义一个组件: function Welcome(

  • 我们的页面一般都是由各种各样的组件构成的,组件就像一个一个积木一样,被用来搭建成页面。例如一个带有用户信息、logo的头部就是一个组件,而用户信息、logo也许也可以是独立组件。组件化可以让我们把一个庞大的页面切割成一个一个小块来分别进行管理,也就是分而治之的思想,同时组件化也能帮助我们更好地进行代码复用。 Nerv天生是支持组件化的,组件是Nerv中的核心概念。Nerv中的组件分为 Class

  • 下面列表中的组件被用于构建 OpenResty。所有组件均可以方便的被激活或禁止。 绝大部分组件已内置在OpenResty安装包中,但也有一部分不包含在内。 Drizzle Nginx 模块、 Postgres Nginx 模块 以及 Iconv Nginx 模块 默认并未启用。 你需要分别加入--with-http_drizzle_module、--with-http_postgres_modu