vue-i18n-composable

Composition API for vue-i18n in Vue 2.x
151,938 47
Install
npm install vue-i18n-composable
Latest Version:2.0.0
Vue:2
Older releases:3
License:MIT
Last Updated:Aug 9, 2022
Links: GitHub  ·  npm
Maintainer: kazupon

vue-i18n-composable

Composition API for vue-i18n in Vue 2.x

Support Vue version

  • vue-i18n-composable@v1: >=2.5 <=2.6
  • vue-i18n-composable@v2: >=2.7 <3

Install

npm i vue-i18n vue-i18n-composable

if you use Vue 2.5 - Vue 2.6, you need to install @vue/composition-api

npm i @vue/composition-api

Usage

For Vue 2.7

// main.js
import Vue from 'vue'
import { createI18n } from 'vue-i18n-composable'
import App from './App.vue'

const i18n = createI18n({
  locale: 'ja',
  messages: {
    en: {
      language: 'English',
    },
    ja: {
      language: '日本語',
    },
  },
})

const app = new Vue({
  render: h => h(App),
  i18n,
})

app.mount('#app')

In components:

<template>
  <div>{{ t('language') }}</div>
</template>

<script>
import { defineComponent } from 'vue'
import { useI18n } from 'vue-i18n-composable'

export default defineComponent({
  setup() {
    return {
      ...useI18n()
    }
  }
})
</script>

For Vue 2.5 - Vue 2.6

// main.js
import Vue from 'vue'
import VueCompositionAPI, { createApp } from '@vue/composition-api'
import { createI18n } from 'vue-i18n-composable'
import App from './App.vue'

Vue.use(VueCompositionAPI)

const i18n = createI18n({
  locale: 'ja',
  messages: {
    en: {
      language: 'English',
    },
    ja: {
      language: '日本語',
    },
  },
})

const app = createApp({
  render: h => h(App),
  i18n,
})

app.mount('#app')

In components:

<template>
  <div>{{ t('language') }}</div>
</template>

<script>
import { defineComponent } from '@vue/composition-api'
import { useI18n } from 'vue-i18n-composable'

export default defineComponent({
  setup() {
    return {
      ...useI18n()
    }
  }
})
</script>

📄 License

MIT License © 2020 Anthony Fu

Related Packages

vue-i18n

Internationalization plugin for Vue.js

115,437,066 2,712
vue-i18n-edge

Internationalization plugin for Vue.js

3,888 2,712
vue-i18n-nightly

Internationalization plugin for Vue.js

1,220 2,713
petite-vue-i18n

Vue I18n lite version

200,724 2,713

Version History

Version Released License
2.0.0 MIT
1.0.0 MIT
0.2.2 MIT
0.2.1 MIT
0.2.0 MIT
Pre-releases (4)
Version Released License
0.0.1-alpha.3 MIT
0.0.1-alpha.2 MIT
0.0.1-alpha.1 MIT
0.0.1-security