evo-mark/inertia-i18n

Internationalisation support for Inertia projects

Installs: 126

Dependents: 1

Suggesters: 0

Security: 0

Stars: 0

Watchers: 2

Forks: 0

Open Issues: 0

Language:JavaScript

v1.2.0 2024-10-25 09:58 UTC

This package is auto-updated.

Last update: 2024-10-25 10:02:12 UTC


README

Build status Total Downloads License

Inertia I18n

Installation

composer require evo-mark/inertia-i18n
npm install ./vendor/evo-mark/inertia-i18n
--
pnpm add ./vendor/evo-mark/inertia-i18n
import InertiaI18n from "inertia-i18n/vite";

export default {
  plugins: [InertiaI18n()],
};
import useInertiaI18nVue from "inertia-i18n/vue";

createInertiaApp({
  setup({ el, App, props, plugin }) {
    const inertiaI18nPlugin = useInertiaI18nVue(props);
    // Optional, but you may get warnings without this
    await inertiaI18nPlugin.load();

    createSSRApp({ render: () => h(App, props) })
      .use(plugin)
      .use(inertiaI18nPlugin)
      .mount(el);
  },
});

Usage

After installation, you can use your frontend localisation package as usual:

<template>
    <div>{{ $t('messages.hello_world') }}</div>
</template>

OR

<script setup>
import { useI18n } from 'vue-i18n';

const { t } = useI18n();
const translated = computed(() => t('message.hello_world));
</script>

See the documentation for the respective frontend packages for more information:

Vue: vue-i18n