【问题标题】:Composing computed properties with other computed properties将计算属性与其他计算属性组合在一起
【发布时间】:2018-05-05 02:55:21
【问题描述】:

我需要编写自定义过滤搜索、排序和分页属性,因为我的产品不能依赖任何开箱即用的解决方案,主要是因为我需要在表格中显示图像、图标、按钮和 URL。将其视为带有图片和购买链接的产品列表页面。

我的问题是如何链接多个计算属性?

示例

对于过滤搜索:

computed: {
    filteredProds:function() {
        return this.prodlist.filter(prod => {
            return prod.name.toLowerCase().includes(this.search.toLowerCase())
        })
    }

为了对表格进行排序,我有这个计算属性以及一种进行排序的方法。

myprods.sort((a,b) => {
  let modifier = 1;
  if(this.currentSortDir === 'desc') modifier = -1;
  if(a[this.currentSort] < b[this.currentSort]) return -1 * modifier;
  if(a[this.currentSort] > b[this.currentSort]) return 1 * modifier;
  return 0;
});

【问题讨论】:

    标签: javascript vue.js


    【解决方案1】:

    就像引用它们一样简单

    data: {
      numbers: [1,2,3]
    },
    computed: {
      oddNumbers () {
        return this.numbers.filter(n => n % 2)
      },
      firstOddNumber () {
        return this.oddNumbers[0]
      }
    }
    

    【讨论】:

    • 谢谢。我通过 Lynda.com 上的教程设法让它工作。
    猜你喜欢
    • 2020-02-05
    • 2018-03-26
    • 2020-02-13
    • 2018-05-12
    • 2018-05-30
    • 2021-11-08
    • 1970-01-01
    • 2016-03-03
    • 1970-01-01
    相关资源
    最近更新 更多