Skip to content

Commit 893a796

Browse files
enable i18n for vuetify (#278)
* enable i18n for vuetify * load vuetify messages * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fix i18n import * remove the usage of tc --------- Signed-off-by: Jinzhe Zeng <[email protected]> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
1 parent bbd0d52 commit 893a796

File tree

4 files changed

+16
-6
lines changed

4 files changed

+16
-6
lines changed

src/App.vue

+4-4
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ export default {
131131
installed_templates.length === 0
132132
? null
133133
: {
134-
name: this.$tc(
134+
name: this.$t(
135135
"message.installed_template",
136136
installed_templates.length,
137137
),
@@ -140,7 +140,7 @@ export default {
140140
builtin_templates.length === 0
141141
? null
142142
: {
143-
name: this.$tc(
143+
name: this.$t(
144144
"message.builtin_template",
145145
builtin_templates.length,
146146
),
@@ -149,14 +149,14 @@ export default {
149149
customized_templates.length === 0
150150
? null
151151
: {
152-
name: this.$tc(
152+
name: this.$t(
153153
"message.customized_template",
154154
customized_templates.length,
155155
),
156156
sub: customized_templates,
157157
},
158158
{
159-
name: this.$tc("message.setting", 2),
159+
name: this.$t("message.setting", 2),
160160
sub: [
161161
{
162162
name: this.$t("message.management"),

src/i18n.js

+4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { createI18n } from "vue-i18n";
2+
import { en, zhHans } from "vuetify/locale";
23

34
function loadLocaleMessages() {
45
const locales = require.context(
@@ -14,10 +15,13 @@ function loadLocaleMessages() {
1415
messages[locale] = locales(key);
1516
}
1617
});
18+
messages["en"]["$vuetify"] = en;
19+
messages["zh"]["$vuetify"] = zhHans;
1720
return messages;
1821
}
1922

2023
export default createI18n({
24+
legacy: false,
2125
locale:
2226
process.env.VUE_APP_I18N_LOCALE || navigator.language.split("-")[0] || "en",
2327
fallbackLocale: process.env.VUE_APP_I18N_FALLBACK_LOCALE || "en",

src/plugins/vuetify.js

+6
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@ import "vuetify/styles";
22
import { createVuetify } from "vuetify";
33
import { aliases, fa } from "vuetify/iconsets/fa";
44
import "@fortawesome/fontawesome-free/css/all.css";
5+
import { createVueI18nAdapter } from "vuetify/locale/adapters/vue-i18n";
6+
import { useI18n } from "vue-i18n";
7+
import i18n from "../i18n.js";
58

69
const vuetify = createVuetify({
710
components: {},
@@ -23,6 +26,9 @@ const vuetify = createVuetify({
2326
},
2427
},
2528
},
29+
locale: {
30+
adapter: createVueI18nAdapter({ i18n, useI18n }),
31+
},
2632
});
2733

2834
export default vuetify;

src/views/InputConfig.vue

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<v-data-table :headers="headers" :items="items" :items-per-page="10">
44
<template #item.template="{ item }">
55
<v-btn :to="item.to">
6-
{{ $tc("message.template") }}
6+
{{ $t("message.template") }}
77
</v-btn>
88
</template>
99
<template #item.delete="{ item }">
@@ -24,7 +24,7 @@ export default {
2424
return {
2525
headers: [
2626
{ title: this.$t("message.name"), key: "name" },
27-
{ title: this.$tc("message.template"), key: "template" },
27+
{ title: this.$t("message.template"), key: "template" },
2828
{ title: this.$t("message.delete"), key: "delete" },
2929
],
3030
items: this.all_items(),

0 commit comments

Comments
 (0)