Vue.js 如何在vue中访问方法的结果

Vue.js 如何在vue中访问方法的结果,vue.js,Vue.js,我想把一个方法的结果传递给params。这是我的密码 <template> <router-link v-bind:to="{ name: 'faq-page', params: { id: selectedCategory }, }" > <li><a @click="findCategory(eachQues

我想把一个方法的结果传递给params。这是我的密码

<template>
    <router-link
        v-bind:to="{
            name: 'faq-page',
            params: { id: selectedCategory },
        }"
    >
         <li><a @click="findCategory(eachQuestion.id, faqData)">{{eachQuestion.question}}</a></li>
    </router-link>
</template>

<script>
export default {
    data() {
        return {
            selectedCategory: ''
        }
    },
    methods: {
        findCategory(id, list) {
            const x = //function here
            if (x) {
             return this.selectedCategory = this.x.slug;
            }
        }
    }
}
</script>

  • {{eachQuestion.question}
  • 导出默认值{ 数据(){ 返回{ selectedCategory:“” } }, 方法:{ findCategory(id,列表){ const x=//这里的函数 if(x){ 返回this.selectedCategory=this.x.slug; } } } }

    该代码的思想是,每当用户单击
  • ,就会执行该方法来查找
    x.slug
    。然后我想在参数中传递
    x.slug
    。我相信我的密码有问题。将方法值传递给参数的正确方法是什么?非常感谢。

    您的方法不应该返回a值,而x是一个局部变量,因此您不应该使用它。x:

    
    方法:{
    findCategory(id,列表){
    const x=//这里的函数
    if(x){
    this.selectedCategory=x.slug;
    }
    }
    }
    
    数据中未定义此类别。你从哪里得到的?啊,对不起,我的问题打错了。已经修好了@我明白了。。我试过了,但还是不行。这条线有效吗
    参数:{id:selectedCategory}
    ?它应该可以工作,但可以尝试将孔布线返回到计算属性中的对象,并查看它是否工作!非常感谢你!!所以解决方案是在computed属性中使用它??不,我的列表没有正确导入,所以我必须修复它。但你的回答是对的,它帮助我解决了问题!