| 123456789101112 |
- import { camelCase, getPropByPath, isDef, isFunction } from '../common/util'
- import Locale from '../../locale'
- export const useTranslate = (name?: string) => {
- const prefix = name ? camelCase(name) + '.' : ''
- const translate = (key: string, ...args: unknown[]) => {
- const currentMessages = Locale.messages()
- const message = getPropByPath(currentMessages, prefix + key)
- return isFunction(message) ? message(...args) : isDef(message) ? message : `${prefix}${key}`
- }
- return { translate }
- }
|