Nuxt async fetch() 不更新组件 属性

Nuxt async fetch() doesn't update component property

我有一个组件可以与 asyncData() 完美配合,但我想改用 fetch()。问题是当使用 fetch 方法时,'car' 属性 永远不会更新。我错过了什么吗?

无效:

data() {
  return {
    car: null,
  }
},
async fetch({ $axios, route }) {
  this.car = await $axios.$get('/cars/' + route.params.id)
},

完美运行:

data() {
  return {
    car: null,
  }
},
async asyncData({ $axios, route }) {
  const response = await $axios.$get('/cars/' + route.params.id)
  return { car: response.data }
},

如果您将 fetch 钩子与 fetch({ ... }) 之类的东西一起使用,您将使用旧的 fetch() 钩子。

如果你想让它工作,试试吧

async fetch() {
  this.car = await this.$axios.$get(`/cars/${this.$route.params.id}`)
},

如本 github issue 所证实。