title: Vue-i18n 'Cannot read property '_t' of undefined at Proxy.Vue.$t'
body: <p>Having issues incorporating vue-i18n into my app. Used <a href="https://medium.freecodecamp.org/how-to-add-internationalization-to-a-vue-application-d9cfdcabb03b" rel="noreferrer">this page</a> as inspiration.</p>
  
  <pre><code>  &lt;b-navbar-nav class="ml-auto" &gt;
      &lt;b-nav-item-dropdown :text="display_name" right&gt;
        &lt;b-dropdown-item disabled&gt;{{ $t('username') }}: {{ username }}&lt;/b-dropdown-item&gt;
        &lt;b-dropdown-item disabled&gt;Organisation: {{ organisation }}&lt;/b-dropdown-item&gt;
      &lt;/b-nav-item-dropdown&gt;
    &lt;/b-navbar-nav&gt;
  </code></pre>
  
  <p>Gives the error: <code>Cannot read property '_t' of undefined at Proxy.Vue.$t</code>
  Tracking the error in Chrome devtools takes me to line 149 (the return statement) of vue-i18n.esm.js:</p>
  
  <pre><code>Vue.prototype.$t = function (key) {
    var values = [], len = arguments.length - 1;
    while ( len-- &gt; 0 ) values[ len ] = arguments[ len + 1 ];
  
    var i18n = this.$i18n;
    return i18n._t.apply(i18n, [ key, i18n.locale, i18n._getMessages(), this ].concat( values ))
  };
  </code></pre>
  
  <p>I'm using vue-cli-3 webpack config and installed vue-i18n from npm and using as a plugin.</p>
  
  <p>i18n.js (in src/plugins directory):</p>
  
  <pre><code>import Vue from 'vue/dist/vue.js';
  import VueI18n from 'vue-i18n';
  
  Vue.use(VueI18n);
  
  const messages = {
    'en': {
      username: 'Username',
      ...
    },
    'se': {
      username: 'Användarnamn',
      ...
    }
  };
  
  export let i18n = new VueI18n({
    locale: 'en', // set locale
    fallbackLocale: 'se', // set fallback locale
    messages, // set locale messages
  });
  </code></pre>
  
  <p>main.js:</p>
  
  <pre><code>import Vue from 'vue/dist/vue.js'
  import VueRouter from 'vue-router'
  import BootstrapVue from 'bootstrap-vue'
  import VueSpinners from 'vue-spinners'
  
  import i18n from './plugins/i18n'
  ...
  new Vue({
    router,
    i18n,
    data() {
      return store;
    },
    render: h =&gt; h(App)
  }).$mount('#app')
  </code></pre>
  
  <p>Dependencies from package.json:</p>
  
  <pre><code>"dependencies": {
    "axios": "^0.18.0",
    "bootstrap-vue": "^2.0.0-rc.11",
    "npm": "^6.5.0",
    "ol": "^5.3.0",
    "proj4": "^2.5.0",
    "qs": "^6.6.0",
    "vue": "^2.5.17",
    "vue-i18n": "^8.8.1",
    "vue-router": "^3.0.2",
    "vue-spinners": "^1.0.2"
  },
  </code></pre>
  
  <p>What do I need to do?</p>