@@ -16,16 +16,15 @@ export default class VueI18n {
1616 _root : ?I18n
1717 _sync : boolean
1818 _fallbackRoot : boolean
19- _fallbackLocale : Locale
2019 _missing : ?MissingHandler
2120 _exist : Function
2221 _watcher : any
2322
2423 constructor ( options : I18nOptions = { } ) {
2524 const locale : Locale = options . locale || 'en-US'
25+ const fallbackLocale : Locale = options . fallbackLocale || 'en-US'
2626 const messages : LocaleMessages = options . messages || { }
2727 this . _vm = null
28- this . _fallbackLocale = options . fallbackLocale || 'en-US'
2928 this . _formatter = options . formatter || new BaseFormatter ( )
3029 this . _missing = options . missing
3130 this . _root = options . root || null
@@ -37,10 +36,12 @@ export default class VueI18n {
3736 return ! isNull ( getPathValue ( message , key ) )
3837 }
3938
40- this . _resetVM ( { locale, messages } )
39+ this . _initVM ( { locale, fallbackLocale , messages } )
4140 }
4241
43- _resetVM ( data : { locale : Locale , messages : LocaleMessages } ) : void {
42+ _initVM ( data : {
43+ locale : Locale , fallbackLocale : Locale , messages : LocaleMessages
44+ } ) : void {
4445 const silent = Vue . config . silent
4546 Vue . config . silent = true
4647 this . _vm = new Vue ( { data } )
@@ -74,9 +75,9 @@ export default class VueI18n {
7475 this . _vm . $set ( this . _vm , 'locale' , locale )
7576 }
7677
77- get fallbackLocale ( ) : Locale { return this . _fallbackLocale }
78+ get fallbackLocale ( ) : Locale { return this . _vm . fallbackLocale }
7879 set fallbackLocale ( locale : Locale ) : void {
79- this . _fallbackLocale = locale
80+ this . _vm . $set ( this . _vm , 'fallbackLocale' , locale )
8081 }
8182
8283 get missing ( ) : ?MissingHandler { return this . _missing }
0 commit comments