|  | import Vue from 'vue'; | 
|  | import VueI18n from 'vue-i18n'; | 
|  |  | 
|  | Vue.use(VueI18n); | 
|  |  | 
|  | function loadLocaleMessages() { | 
|  | const locales = require.context( | 
|  | './locales', | 
|  | true, | 
|  | /[A-Za-z0-9-_,\s]+\.json$/i | 
|  | ); | 
|  | const messages = {}; | 
|  | locales.keys().forEach(key => { | 
|  | const matched = key.match(/([A-Za-z0-9-_]+)\./i); | 
|  | if (matched && matched.length > 1) { | 
|  | const locale = matched[1]; | 
|  | messages[locale] = locales(key); | 
|  | } | 
|  | }); | 
|  | return messages; | 
|  | } | 
|  |  | 
|  | export default new VueI18n({ | 
|  | // default language is English | 
|  | locale: 'en', | 
|  | // locale messages with a message key that doesn't exist will fallback to English | 
|  | fallbackLocale: 'en', | 
|  | messages: loadLocaleMessages() | 
|  | }); |