VueJS:根据查询变量更新数据

时间:2019-04-06 12:00:12

标签: javascript vue.js

在我的路线中,我有一个参数,例如:?id = 101

我有一些数据,例如:

data () {
  return {
   record: {id: null}
  }
}

现在,我要执行的操作是:如果存在查询参数,则要使用查询变量中的ID更新数据中的ID。我尝试在提取中执行以下操作:

async fetch ({ store, redirect, params, query }) {
  this.record = {id: query.id}
}

但是,什么也没发生。我还尝试过从fetch调用一个函数,但是它说该方法未定义。

可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

好,我的答案被删除了。在下面找到答案:

export default {
  data () {
    return {
      record: {
        id: null
      }
    }
  },
  created () {
    this.fetchData()
  },
  watch: {
    '$route': 'fetchData'
  },
  methods: {
    fetchData () {
      getRecord(this.$route.query.id, (err, id) => {
        if (err) {
          this.error = err.toString()
        } else {
          this.record.id = id
        }
      })
    }
  }
}

更多信息在这里:

https://router.vuejs.org/guide/advanced/data-fetching.html