首页 > 解决方案 > 如何将对象中的对象键:对替换为根据同一对象中的其他属性返回真或假的函数

问题描述

active:false给定下面的对象,有没有一种方法可以用搜索filterValues并返回 true的方法替换顶级行,如果它找到任何filterValueswith active:true

let object = {
        name: 'Brand',
        field: 'brand',
        type: 'string',
        active: false,
        open: true,
        table: 'Catalogue',
        filterValues: [
          {
            display: 'Schweigen Classic',
            value: 'Schweigen Classic',
            active: false,
            filterGroup: 'brand',
          },
          {
            display: 'Schweigen IN.',
            value: 'Schweigen IN.',
            active: false,
            filterGroup: 'brand',
          },
          {
            display: 'Schweigen X',
            value: 'Schweigen X',
            active: false,
            filterGroup: 'brand',
          },
        ],
      }

标签: javascript

解决方案


是的,你可以让它成为getter

    ...
    get active() {
        return this.filterValues.some(f => f.active)
    },
    ...

推荐阅读