// import vue // import vue-i18n Vue.use(VueI18n); const i18n = new VueI18n({ locale: 'ja', fallbackLocale: 'ja', messages: { "ja": { "こんにちは、世界": "こんにちは、世界" }, "en": { "こんにちは、世界": "Hello World" } } }); new Vue({ el: "#i18n", i18n, data() { return { locale: "ja" } }, watch: { locale(newLocale) { this.$i18n.locale = newLocale; } } });
<main id="i18n"> <div> <label><input type="radio" value="ja" v-model="locale" />日本語</label> <label><input type="radio" value="en" v-model="locale" />English</label> </div> <h1>{{ $t("こんにちは、世界") }}</h1> </main>