0.0.11 • Published 3 years ago

@bpframework/middleware-koa-i18n v0.0.11

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

koa i18n middleware in bpframework.

Middleware specification

https://github.com/bpcloud/middleware

usage

Setup.

import { Application } from 'bpframework';
import * as middleware_i18n from '@bpframework/middleware-koa-i18n';

let cfg = {
  dirs: ['resource/locales'],
  defaultLocale: 'zh-CN',
  functionName: '__i18n',
  queryField: 'locale', // querystring - `/?locale=en-US`
  cookieField: 'locale',
  localeAlias: {
    zh: 'zh-CN',
  },
};

Application.use(middleware_i18n.middleware(cfg))
Application.runKoa(...);

Use in anywhere.

__i18n('hello {name}', {name:'world'})  // return 'hello world' by default locale
__i18n('hello %s %s', 'name', 'world')  // return 'hello name world' by default locale
__i18nLang('en', 'hello {name}', {name:'world'})  // return 'hello world' by 'en' locale

Use in controller.

@RequestMapping({
  path: '/test',
  method: RequestMethod.GET,
})
async test(
  @RestObject restObj: RestObjectTypeRest<koa.Context> // or RestObjectType
): Promise<any> {

  // return 'hello world' by locale
  restObj.ctx.__i18n('hello {name}', {name:'world'});

  ...
}
0.0.10

3 years ago

0.0.11

3 years ago

0.0.9

3 years ago

0.0.8

3 years ago

0.0.7

3 years ago

0.0.6

3 years ago

0.0.5

3 years ago

0.0.4

3 years ago

0.0.3

3 years ago

0.0.2

3 years ago

0.0.1

3 years ago