Skip to content

🔑 优化国际化文案的 Babel 插件,可以减少国际化文案 40% ~ 50% 的 bundle size。

Notifications You must be signed in to change notification settings

hustcc/babel-plugin-optimize-i18n

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

babel-plugin-optimize-i18n

A babel plugin for optimizing i18n locales file which can reduce 40% ~ 50% bundle size.

npm npm download

Install

npm i --save-dev babel-plugin-optimize-i18n

Usage

Add it into .babelrc.

{
  "plugins": [
    "optimize-i18n"
  ]
}

Result

The source i18n text file below:

{
  "module.left.title": "左侧标题",
  "module.right.title": "右侧标题"
}

will be transformed to:

{
  $1: "左侧标题",
  $2: "右侧标题"
}

Configure

You can customize the configure of the plugin.

{
  localeFiles: ['zh_CN', 'en_US'],
  i18nFunction: {
    object: 'intl',
    property: 'get'
  },
  uniquePrefix: '$',
}

Test

npm i

npm t

Then see the files in lib dir.

Constraint

For example, when you use the function below to format i18n text.

intl.get('key', params);

You should be sure the 1st parameter of intl.get is string constant, or will be build error.

License

MIT@hustcc.

About

🔑 优化国际化文案的 Babel 插件,可以减少国际化文案 40% ~ 50% 的 bundle size。

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages