小编spn*_*000的帖子

未捕获的类型错误:无法读取 null 的属性“$store”

我只是编程的新手,刚刚尝试了 Vue 几天。

在这里,我想通过以下代码将用户的地理位置数据存储到 Vuex 状态。

    mounted () {
    navigator.geolocation.getCurrentPosition(foundLocation, noLocation)
    function foundLocation (position) {
      var userLoc = {
        Lon: position.coords.longitude,
        Lat: position.coords.latitude
      }
      console.log(userLoc)
      this.$store.dispatch('userLocSave', {lat: userLoc.Lat, lon: userLoc.Lon})
    }
    function noLocation () {
      console.log('No Location found!')
    }
  }
Run Code Online (Sandbox Code Playgroud)

这是 store.js状态中的代码

  state: {
    userLat: null,
    userLon: null
  }
Run Code Online (Sandbox Code Playgroud)

突变

userLocation (state, locData) {
  state.userLat = locData.lat
  state.userLon = locData.lon
}
Run Code Online (Sandbox Code Playgroud)

行动

userLocSave ({commit}, locData) {
  commit('userLocation', {
    lat: locData.lat,
    lon: locData.lon
  })
}
Run Code Online (Sandbox Code Playgroud)

但是,它不像我想的那样工作并显示此错误。

Uncaught TypeError: Cannot …
Run Code Online (Sandbox Code Playgroud)

javascript vue.js vuex

2
推荐指数
1
解决办法
5535
查看次数

标签 统计

javascript ×1

vue.js ×1

vuex ×1