国际化

acr 提供了多种形式来让你实现国际化

设置语言

在实例化 Acr 时,可以通过配置的形式传入 lang 属性来设置当前所使用得语言。

const acr = new Acr({ lang: 'zh-cn' });

内置语言包

由于内置语言包在开发的优先级上并不高(主要是我认为内置的语言包不可能满足所有需求),因此目前只完成了 en 和 zh-cn 的支持。后续根据情况会陆续补充更多语言。

扩展语言包

由于内置语言包并不能满足构建大型网站的需求,我们提供了扩展语言包的方法。

locales

在配置中使用 locales 参数来扩展语言包。

const acr = new Acr({ 
    lang: 'zh-cn',
    locales: {
        'zh-cn': {
            string: {
                equal: '{name || path}必须等于{params[0]}'
            },
        },
    },
});

translate

在配置中使用 translate 参数来替代系统翻译接口。

这种方式会使内置语言包和 locales 参数配置的语言包失效

const acr = new Acr({
    lang: 'zh-cn',
    translate: (string, lang) => {
        // ...
        return 'hi';
    },
});

translate 方法接受两个参数 stringlang

  • string 待翻译的字符串

  • lang 语言

返回值为最终翻译的结果。

Last updated