Skip to content

Commit 1709a31

Browse files
authored
improvement: support vue-i18n-loader bridge mode (#709)
1 parent b7a31a8 commit 1709a31

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

packages/vue-i18n-core/src/mixins/bridge.ts

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ export function defineMixin(
1919
if (options.__VUE18N__INSTANCE__) {
2020
return
2121
}
22-
options.i18n = options.i18n || (options.__i18n ? {} : null)
22+
options.i18n = options.i18n || (options.__i18nBridge ? {} : null)
2323

2424
this._i18nBridgeRoot = i18n
2525
if (i18n.mode === 'composition') {
@@ -30,13 +30,13 @@ export function defineMixin(
3030
if (options.i18n) {
3131
if (options.i18n instanceof VueI18n) {
3232
// init locale messages via custom blocks
33-
if (options.__i18n) {
33+
if (options.__i18nBridge) {
3434
try {
3535
const localeMessages =
3636
options.i18n && options.i18n.messages
3737
? options.i18n.messages
3838
: {}
39-
;(options.__i18n as string[]).forEach(resource =>
39+
;(options.__i18nBridge as string[]).forEach(resource =>
4040
deepCopy(JSON.parse(resource), localeMessages)
4141
)
4242
Object.keys(localeMessages).forEach((locale: Locale) => {
@@ -75,13 +75,13 @@ export function defineMixin(
7575
}
7676

7777
// init locale messages via custom blocks
78-
if (options.__i18n) {
78+
if (options.__i18nBridge) {
7979
try {
8080
const localeMessages =
8181
options.i18n && options.i18n.messages
8282
? options.i18n.messages
8383
: {}
84-
;(options.__i18n as string[]).forEach(resource =>
84+
;(options.__i18nBridge as string[]).forEach(resource =>
8585
deepCopy(JSON.parse(resource), localeMessages)
8686
)
8787
options.i18n.messages = localeMessages
@@ -135,7 +135,11 @@ export function defineMixin(
135135
return
136136
}
137137

138-
options.i18n = options.i18n || (options.__i18n ? {} : null)
138+
if (i18n.mode === 'composition') {
139+
return
140+
}
141+
142+
options.i18n = options.i18n || (options.__i18nBridge ? {} : null)
139143

140144
if (options.i18n) {
141145
if (options.i18n instanceof VueI18n) {

0 commit comments

Comments
 (0)