内容简介:更新内容 Breakings 数据不再接入一级链条,需要从chain上获取(这种直接使用的场景也较少) - const value = i18n.button.submit; + const value = i18n.chain.button.submit; 删除下划线_,内置方法调整回一...
更新内容
Breakings
- 数据不再接入一级链条,需要从chain上获取(这种直接使用的场景也较少)
- const value = i18n.button.submit;
+ const value = i18n.chain.button.submit;
- 删除下划线
_
,内置方法调整回一级链条
- i18n._.locale('zh');
+ i18n.locale('zh');
- 删除
useI18n
,改成从实例获取chain
function App: FC = () => {
- useI18n(i18n);
+ const chain = i18n.use();
return <div>{chain.button.submit}</div>;
}
- 删除高阶组件
I18nProvider
,改成从实例获取hoc
class App extends Component {
render() {
+ const { chain } = this.props;
- return <div>{i18n.button.submit}</div>;
+ return <div>{chain.button.submit}</div>;
}
}
-export default I18nProvider(i18n)(App);
+export default i18n.hoc(App);
Features
- 新增方法
translate
,与t
一致,都是用于翻译字符串模板
- 新增字符串模板生成工具
// 跟直接写字符串一样,但是这边是有提示的
const key = i18n.literal.button.submit; // key === 'button.submit'
// 可以使用translate方法获得真实的数据
const value = i18n.translate(key); // value === 'Submit'
------------------------------------
介绍
说到国际化,你是否也常年奔波于复制粘贴的重复劳动里?像 t('home:submit')
t('common:something:success')
这些没有任何提示,需要脑子去记,不仅开发效率低,而且键盘敲快一点就容易打错字母,重点是你基本发现不了这种错误。
我更喜欢有提示的代码,利用typescript
,我发明了一种使用链式操作的i18n组件,并拥有所有提示,就类似 i18n.common.something.success
这种,代码可以自动补全,保证不会写错。
兼容性
IE
Edge
Chrome
Firefox
Safari
Node
9+
12+
5+
4+
5+
*
- 数据不再接入一级链条,需要从chain上获取(这种直接使用的场景也较少)
- const value = i18n.button.submit; + const value = i18n.chain.button.submit;
- 删除下划线
_
,内置方法调整回一级链条
- i18n._.locale('zh'); + i18n.locale('zh');
- 删除
useI18n
,改成从实例获取chain
function App: FC = () => { - useI18n(i18n); + const chain = i18n.use(); return <div>{chain.button.submit}</div>; }
- 删除高阶组件
I18nProvider
,改成从实例获取hoc
class App extends Component { render() { + const { chain } = this.props; - return <div>{i18n.button.submit}</div>; + return <div>{chain.button.submit}</div>; } } -export default I18nProvider(i18n)(App); +export default i18n.hoc(App);
Features
- 新增方法
translate
,与t
一致,都是用于翻译字符串模板
- 新增字符串模板生成工具
// 跟直接写字符串一样,但是这边是有提示的
const key = i18n.literal.button.submit; // key === 'button.submit'
// 可以使用translate方法获得真实的数据
const value = i18n.translate(key); // value === 'Submit'
------------------------------------
介绍
说到国际化,你是否也常年奔波于复制粘贴的重复劳动里?像 t('home:submit')
t('common:something:success')
这些没有任何提示,需要脑子去记,不仅开发效率低,而且键盘敲快一点就容易打错字母,重点是你基本发现不了这种错误。
我更喜欢有提示的代码,利用typescript
,我发明了一种使用链式操作的i18n组件,并拥有所有提示,就类似 i18n.common.something.success
这种,代码可以自动补全,保证不会写错。
兼容性
IE
Edge
Chrome
Firefox
Safari
Node
9+
12+
5+
4+
5+
*
translate
,与t
一致,都是用于翻译字符串模板// 跟直接写字符串一样,但是这边是有提示的 const key = i18n.literal.button.submit; // key === 'button.submit' // 可以使用translate方法获得真实的数据 const value = i18n.translate(key); // value === 'Submit'
------------------------------------
介绍
说到国际化,你是否也常年奔波于复制粘贴的重复劳动里?像 t('home:submit')
t('common:something:success')
这些没有任何提示,需要脑子去记,不仅开发效率低,而且键盘敲快一点就容易打错字母,重点是你基本发现不了这种错误。
我更喜欢有提示的代码,利用typescript
,我发明了一种使用链式操作的i18n组件,并拥有所有提示,就类似 i18n.common.something.success
这种,代码可以自动补全,保证不会写错。
兼容性
IE | Edge | Chrome | Firefox | Safari | Node |
---|---|---|---|---|---|
9+ | 12+ | 5+ | 4+ | 5+ | * |
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- Hyperf 发布国际化组件及多个组件 v1.0.13 版本
- I18n Chain 发布 v0.5.2,高性能 TypeScript 国际化组件
- Flutter实现国际化
- Webnovel 国际化实践
- 聊聊国际化MessageSource
- 国际化语种名称的标识
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Haskell函数式编程基础
Simon Thompson / 科学出版社 / 2013-7-1 / 129.00
《Haskell函数式编程基础(第3版)》是一本非常优秀的Haskell函数式程序设计的入门书,各章依次介绍函数式程序设计的基本概念、编译器和解释器、函数的各种定义方式、简单程序的构造、多态和高阶函数、诸如数组和列表的结构化数据、列表上的原始递归和推理、输入输出的控制处理、类型分类与检测方法、代数数据类型、抽象数据类型、惰性计算等内容。书中包含大量的实例和习题,注重程序测试、程序证明和问题求解,易......一起来看看 《Haskell函数式编程基础》 这本书的介绍吧!