Vue.js 如何从vue-i18n的数据库中获取数据?

Vue.js 如何从vue-i18n的数据库中获取数据?,vue.js,vue-i18n,Vue.js,Vue I18n,我想从数据库中获取i18n的语言数据。我使用会话存储来保存数据,然后从API获取数据。但在会话存储从数据库获取数据之前创建的i18n。如何在创建i18n之前创建会话存储 我使用主App.js文件中的mounted()钩子进行查询(javascript)。像这样: mounted () { // see if we have a user in Session Storage // yes? commit it to store if (sessionStora

我想从数据库中获取i18n的语言数据。我使用会话存储来保存数据,然后从API获取数据。但在会话存储从数据库获取数据之前创建的i18n。如何在创建i18n之前创建会话存储

我使用主App.js文件中的mounted()钩子进行查询(javascript)。像这样:

  mounted () {
    //  see if we have a user in Session Storage
    //  yes? commit it to store
    if (sessionStorage.getItem('username') && sessionStorage.getItem('userId') && sessionStorage.getItem('permission') && sessionStorage.getItem('userKey')) {
      let obj = {
        username: sessionStorage.getItem('username'),
        userId: sessionStorage.getItem('userId'),
        permission: sessionStorage.getItem('permission'),
        key: sessionStorage.getItem('userKey')
      }
      this.$store.commit('setUser', obj)
    //  no? commit default 'Guest' user
    } else {
      this.$store.commit('setUserToGuest')
    }
  }
这不是一个实际的会话存储,所以它也必须在javascript中设置。当我从用户登录http请求返回时,我设置如下变量:

loginCheck () {
  api.user.login(this.username1, this.password1).then((response) => {
    if (response.data.login.pass > 0) {
      //  set session . . .
      sessionStorage.setItem('username', response.data.login.username)
      sessionStorage.setItem('userId', response.data.login.id)
      sessionStorage.setItem('permission', response.data.login.permission)
      sessionStorage.setItem('userKey', response.data.login.user_key)
      //  set the store
      let obj = {
        userId: response.data.login.id,
        username: response.data.login.username,
        permission: response.data.login.permission,
        key: response.data.login.user_key
      }
      this.$store.commit('setUser', obj)
    } else {
      //  set session . . .
      sessionStorage.setItem('username', 'Guest')
      sessionStorage.setItem('userId', 0)
      sessionStorage.setItem('permission', 0)
      sessionStorage.setItem('userKey', 0)
      this.$store.commit('setUserToGuest')
    }
  })
}

我有一个数据库语言。我尝试从中获取数据,然后在sessionStrorage中设置它们。然后我在vue-i18n中调用sessionStorage,这是我第一次访问我的wep应用程序,虽然我在sessionStorage中看到有数据库,但当我使用console.log时,它会为我返回null。我点击刷新,一切正常。虽然我在beforeCreate()函数中调用了它,但我不明白为什么它会返回null。我不知道这是否有帮助,但使用chrome developers tools Application tab可以实时查看会话存储的状态。我认为这个问题是异步的。如何调用函数然后使用Vue-i18n?