Vue CLI plugin to add vue-i18n to your Vue Project
- vue-i18n basic scaffolding
- Locale messages in Single File components with vue-i18n-loader
- Locale messages missing & unused reporting (experimental)
- Env Variables
If yon don't have a project created with Vue CLI:
vue create my-vue-app
Install the plugin into your project:
cd my-vue-app
vue add i18n
-
vue-cli-service i18n:report
(experimental)Report the missing locale message keys and unused keys.
NOTE: limitation
vue-cli-service i18n:report
cannot detect missing and unused keys from local messages of i18n custom blocks.
When vue-i18n code files had been scaffolded into your project, the following env variables generate into .env
:
-
VUE_APP_I18N_LOCALE
The locale of project localization, default
en
. -
VUE_APP_I18N_FALLBACK_LOCALE
The locale of project fallback localization, default
en
.
These env variables are read in src/i18n.(js|ts)
.
vue-cli-plugin-i18n
have some plugin options in vue.config.js
:
module.exports = {
pluginOptions: {
i18n: {
locale: 'ja',
fallbackLocale: 'en',
localeDir: 'locales',
enableInSFC: false,
enableLegacy: false
}
}
}
-
Type:
string
-
Default in prompt:
en
The locale of project localization.
-
Type:
string
-
Default in prompt:
en
The fallback locale of project localization.
-
Type:
string
-
Default in prompt:
locales
The directory where store localization messages of project. The specified directory will start from the
src
directory.
-
Type:
boolean
-
Default in prompt:
false
-
Support project Vue version: Vue 2 only
Whether enable locale messages in Single file components. Default
No
in prompt, for Vue 2 and Vue I18n v8.x only.
-
Type:
boolean
-
Default in prompt:
false
-
Support project Vue version: Vue 3 only
Whether use legacy mode API in Vue I18n. Default
No
in prompt, for Vue 3 and Vue I18n v9 or later.
-
Type:
boolean
-
Default in prompt:
false
-
Support project Vue version: Vue 2 only
Whether to set up a bridge to migrate to
vue-i18n@v9.x
fromvue-i18n@v8.26
, DefaultNo
in prompt.⚠️ NOTE: If you use the Composition API withvue-i18n-bridge
in bridge mode, you need to install@vue/composition-api
.
-
Type:
boolean
-
Default in prompt:
false
-
Support project Vue version: Vue 2 only
When
enableBridge
istrue
, i.e. in bridge mode, whether localization messages placed inlocaleDir
option should be pre-compiled by message compiler or not.If you use Composition API in bridge mode, this option must be
true
because all localization messages are bundled during production build.
-
Type:
boolean
-
Default(No Prompt):
false
-
Support project Vue version: Vue 3 only
Whether or not to use Vue I18n runtime-only, set in the
vue-i18n
field of webpackresolve.alias
option. default Vue I18n (vue-i18n) package.jsonmodule
field will be used. Iftrue
is specified, Vue I18n (vue-i18n) will usenode_modules/vue-i18n/dist/vue-i18n.runtime.esm-bundler.js
.For more details, See here
-
Type:
boolean
-
Default(No Prompt): if
enableLegacy
setfalse
,true
else thenfalse
-
Support project Vue version: Vue 3 only
Whether to make vue-i18n's API only composition API. By default the legacy API is tree-shaken.
For more details, See here
-
Type:
boolean
-
Default(No Prompt):
true
-
Support project Vue version: Vue 3 only
Whether to install the full set of APIs, components, etc. provided by Vue I18n. By default, all of them will be installed.
If
false
is specified, build-in components and directive will not be installed in vue and will be tree-shaken.For more details, See here
Details changes for each release are documented in the CHANGELOG.md.
Please make sure to read the Issue Reporting Checklist before opening an issue. Issues not conforming to the guidelines may be closed immediately.
Managed with GitHub Projects
Please make sure to read the Contributing Guide before making a pull request.