liluning

vue中computed计算属性无法直接进行传参

如果有传参数的需求比如说做数据筛选功能可以使用闭包函数(也叫匿名函数)实现

例如:

在上篇博客vue安装使用最后的成绩表练习中的过滤功能的实现:

<tr v-for="(item,index) in arr" v-if="myfilter(index)">
    <td>{{item.username}}</td>
    <td>{{item.sex}}</td>
    <td>{{item.grade}}</td>
    <td>
        <a href="#" @click="delClick(index)">删除</a>
    </td>
</tr>

computed计算属性:

export default {
    name: 'Achievement',
    data () {
        return {
            ...
        }
    },
    methods: {
        ...
    },
    computed: {
        myfilter() {
            return function(index){
                return this.arr[index].username.match(this.name)!==null;         
            }           
        } 
    }
}

即可,这个只是computed计算属性无法直接进行传参的解决笔记其余完整代码在上篇文章。

 

相关文章:

  • 2021-12-04
  • 2021-09-18
  • 2021-05-06
  • 2021-04-19
  • 2021-04-21
  • 2021-11-11
  • 2021-10-12
猜你喜欢
  • 2021-11-06
  • 2021-09-13
  • 2021-08-17
  • 2021-06-27
  • 2019-05-22
  • 2021-11-23
  • 2021-11-15
相关资源
相似解决方案