1.0.3 • Published 2 years ago

zuoy-hooks v1.0.3

Weekly downloads
-
License
-
Repository
-
Last release
2 years ago

zuoy-hooks

这是zuoy提供的自定义react hooks

useZuoyIntl

基于react-intluseIntlformatMessage封装,返回zuoyz函数。

注意此hook是使用useIntlformatMessage的一个代替,前提是你必须先添加react-intl要求的IntlProvider

import { useZuoyIntl } from 'zuoy-hooks';

const App = () => {
  const z = useZuoyIntl();
  return <div>{z('你好')}</div>
}

export default App;

指定环境

useZuoyIntl默认会从localStorage中读取env字段,来判断z函数的返回。

也可以通过参数传入环境,这个优先级会更高一些。

import { useZuoyIntl } from 'zuoy-hooks';

const App = () => {
  const z = useZuoyIntl('prod');
  return <div>{z('你好')}</div>
}

export default App;

dev环境

dev环境下,zuoy不会使用react-intl,直接返回输入的内容。比如在上面的例子中,z('你好')直接返回你好。如果是z('你好,{name}', { name: 'zuoy' }),则格式化之后再返回,即你好,zuoy

prod环境

上面的例子在prod环境下,zuoy会返回intl.formatMessage({ id: '你好' })

Z函数参数说明

z函数传参主要满足intl.formatMessage的要求。

第一个参数descriptor,z函数的descriptor类型ZuoyDescriptorintl.formatMessageDescriptor类型上拓展了value属性,会在返回时直接给到intl.formatMessagedescriptor的id属性。这个value属性也可以直接放到z函数的第一个参数。

descriptor

type: string | ZuoyDescriptor;

values

type: Record<string, PrimitiveType>

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago