VueJS获取与路线匹配的信息

时间:2017-05-30 16:12:16

标签: javascript vue.js vuejs2

我正在使用VueRouter。我需要我的用户在直接导航到单个业务时能够看到数据。为了做到这一点,我试图创建这个循环我的数据并将路由与数据的属性值匹配的方法。

我有以下方法:

methods: {
    finalItem () {
      return this.businesses.filter((business) => {
        return business.link === this.$route.params.listing
      })
    }
  }

但我没有收到返回的商家数据:

  

boundFn

我也试过这样的事情:

finalItem () {
      return this.businesses.filter((business) => {
        return business.match(this.$route.params.listing)
      })
    }

但是遇到了同样的问题。

1 个答案:

答案 0 :(得分:1)

由于finalItem是一种方法,如果您尝试像计算属性一样访问它,它将只返回该方法的函数定义(因此boundFn)。

将方法更改为计算属性:

computed: {
  finalItem () {
    return this.businesses.filter((business) => {
      return business.link === this.$route.params.listing
    })
  },
}

否则,您需要实际调用该方法:

// in your component's script
console.log(this.finalItem());

// in your template
{{ finalItem() }}