1.6.9 • Published 1 year ago

@alicloud/console-base-intl-factory v1.6.9

Weekly downloads
154
License
MIT
Repository
github
Last release
1 year ago

@alicloud/console-base-intl-factory

@alicloud/console-base-intl-factory-basic 上的扩展,标准化带 HTML 及换行的输出样式。

这个包会额外要求引入 React,如果只是需要纯文本的国际化,请使用 @alicloud/console-base-intl-factory-basic

INSTALL

tnpm i @alicloud/console-base-intl-factory -S

API

export default (messagesMap: Record<string, Record<string, string>>, options?: IntlFactoryOptions) => <V extends {} = {}, T = string>(id: string, values?: V, instructionsExtra?: IntlInstructions) => T;

interface IntlFactoryOptions extends IntlFactoryOptionsBasic { // IntlFactoryOptionsBasic from @alicloud/console-base-intl-factory-basic
  instructionSeparator?: string;
  htmlInstruction?: string;
  linesInstruction?: string;
}

interface IntlInstructions {
  html?: boolean;
  lines?: boolean;
}

USAGE

定义你自己的 intl

// src/intl/index.ts
import intlFactory from '@alicloud/console-base-intl-factory';

import localeZhCN from './messages/zh-cn';
import localeEnUS from './messages/en-us';

export default intlFactory<typeof localeZhCN>({
  'zh-CN': localeZhCN, // 这里的 key 你可以写成 zhCN zh_cn 等,这里自会处理成 kebab-case 的 'zh-cn'
  'en-US': localeEnUS // 默认会把当前语言的 messages 和英文下做一个 merge,在当前语言下找不到的 message 会 fallback 为英文
}, {
  locale, // 可选,当前的 locale
  localeDefault, // 可选,默认 fallback 的 locale,默认英文
  instructionSeparator, // 可选,默认 '!'
  htmlInstruction, // 可选,默认 'html'
  linesInstruction, // 可选,默认 'lines'
});

这样,你的 intl 方法就有了根据 key 的后缀自动将文案渲染成带有样式的 HTML。

使用你的 intl 方法

import intl from ':/intl';

intl('xxx');
intl('xxx_{id,name}!html', { // 将渲染成 HTML
  id,
  name
});
intl('xxx!html!lines'); // 将渲染成 HTML,且内部的换行均有意义(会转成 p、ul、ol 等)
1.6.9

1 year ago

1.6.8

1 year ago

1.6.7

1 year ago

1.6.4

1 year ago

1.6.2

2 years ago

1.6.6

1 year ago

1.6.0

2 years ago

1.5.3

2 years ago

1.5.2

2 years ago

1.5.1

2 years ago

1.5.0

2 years ago

1.4.1

2 years ago

1.4.0

2 years ago

1.3.1

2 years ago

1.3.0

2 years ago

1.2.89

3 years ago

1.2.87

3 years ago

1.2.92

3 years ago

1.2.90

3 years ago

1.2.91

3 years ago

1.2.71

3 years ago

1.2.70

3 years ago

1.2.69

3 years ago

1.2.67

3 years ago

1.2.68

3 years ago

1.2.66

3 years ago

1.2.64

3 years ago

1.2.63

3 years ago

1.2.62

3 years ago

1.2.60

3 years ago

1.2.56

3 years ago

1.2.57

3 years ago

1.2.59

3 years ago

1.2.54

3 years ago

1.2.55

3 years ago

1.2.53

3 years ago

1.2.52

3 years ago

1.2.50

3 years ago

1.2.49

3 years ago

1.2.47

3 years ago

1.2.46

3 years ago

1.2.41

3 years ago

1.2.42

3 years ago

1.2.43

3 years ago

1.2.44

3 years ago

1.2.40

3 years ago

1.2.39

3 years ago

1.2.31

3 years ago

1.2.34

3 years ago

1.2.38

3 years ago

1.2.36

3 years ago

1.2.30

3 years ago

1.2.29

3 years ago

1.2.27

3 years ago

1.2.28

3 years ago

1.2.26

3 years ago

1.2.25

3 years ago

1.2.24

3 years ago

1.2.22

3 years ago

1.2.19

3 years ago

1.2.18

3 years ago

1.2.17

3 years ago

1.2.16

3 years ago

1.2.15

3 years ago

1.2.14

3 years ago

1.2.13

3 years ago

1.2.12

3 years ago

1.2.11

3 years ago

1.2.10

3 years ago

1.2.9

3 years ago

1.2.8

3 years ago

1.2.7

3 years ago

1.2.6

3 years ago

1.2.5

3 years ago

1.2.4

3 years ago

1.2.3

3 years ago

1.2.2

3 years ago

1.2.1

3 years ago

1.2.0

3 years ago

1.1.52

3 years ago

1.1.51

3 years ago

1.1.50

3 years ago

1.1.49

3 years ago

1.1.48

3 years ago

1.1.47

3 years ago

1.1.45

3 years ago

1.1.46

3 years ago

1.1.43

3 years ago

1.1.41

3 years ago

1.1.40

3 years ago

1.1.38

3 years ago

1.1.36

3 years ago

1.1.34

3 years ago

1.1.33

3 years ago

1.1.32

3 years ago

1.1.35

3 years ago

1.1.31

3 years ago

1.1.30

3 years ago

1.1.29

3 years ago

1.1.23

3 years ago

1.1.22

3 years ago

1.1.19

3 years ago

1.1.18

3 years ago

1.1.20

3 years ago

1.1.17

3 years ago

1.1.16

3 years ago

1.1.14

3 years ago

1.1.12

3 years ago

1.1.13

3 years ago

1.1.11

3 years ago

1.1.10

3 years ago

1.1.9

3 years ago

1.1.7

3 years ago

1.1.6

3 years ago

1.1.5

3 years ago

1.1.4

3 years ago

1.1.3

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago

1.0.30

3 years ago

1.0.28

3 years ago

1.0.27

3 years ago

1.0.26

3 years ago

1.0.24

3 years ago

1.0.23

3 years ago

1.0.22

3 years ago

1.0.21

3 years ago

1.0.20

3 years ago

1.0.19

3 years ago

1.0.18

3 years ago

1.0.17

3 years ago

1.0.16

3 years ago

1.0.15

3 years ago

1.0.14

3 years ago

1.0.13

3 years ago

1.0.12

3 years ago

1.0.11

3 years ago

1.0.9

3 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago

0.0.2

3 years ago