Javascript selectKinds不是一个函数

Javascript selectKinds不是一个函数,javascript,html,vue.js,Javascript,Html,Vue.js,我是Vue.js的新手。我试着用v来表示: 情节№{{item.company\u department\u id} ... item.kind_title是包含其他对象的对象。我需要从中选择一些对象。为此,我在computed部分编写了函数selectKinds: 选择种类项目{ 设obj=项目 让SelectedTypes=[] obj中的forlet键{ ifkey==“工作服”| key==“尺寸”{ 选择的种类。pushobj[键] } } 返回所选种类 } 这就是我的计算部分的外观:

我是Vue.js的新手。我试着用v来表示:

情节№{{item.company\u department\u id} ... item.kind_title是包含其他对象的对象。我需要从中选择一些对象。为此,我在computed部分编写了函数selectKinds:

选择种类项目{ 设obj=项目 让SelectedTypes=[] obj中的forlet键{ ifkey==“工作服”| key==“尺寸”{ 选择的种类。pushobj[键] } } 返回所选种类 } 这就是我的计算部分的外观:

计算:{ 过滤数据{ const query=this.plot 让filteredData=[] 设obj=this.handbookWorkers.Items obj中的forlet键{ 设el=obj[key] ifel.company\u department\u id.indexOfquery!=-1{ 过滤数据 } } 返回过滤器数据 }, 选择种类项目{ 设obj=项目 让SelectedTypes=[] obj中的forlet键{ ifkey==“工作服”| key==“尺寸”{ 选择的种类。pushobj[键] } } 返回所选种类 } } 我收到一个错误selectKinds不是控制台中的函数

为什么会发生这种情况?我做错了什么?

新Vue{ el:应用程序, 数据:{ 项目:[{ 公司部门编号:1, 种类名称:{ 大小:11, 工作服:“asd”, siz:“aaa” } }, { 公司部门编号:2, 种类名称:{ 尺码:21, siz:‘bbb’ } }, { 公司部门编号:3, 种类名称:{ 尺码:31 } } ] }, 计算:{ 新项目{ let list=this.items.mapv=>{ v、 selectedKinds=this.selectKindsv.kind\u标题 返回v } 返回列表 } }, 方法:{ 选择Kindsitem{ 设obj=项目 让SelectedTypes=[] 用于输入obj中的let键{ 如果键===“工作服”|键===“尺寸”{ 选择的种类。pushobj[键] } } 返回所选种类 } } } 情节№{{item.company\u department\u id} {{kind} 默认情况下,computed检测内部属性并返回计算结果

要设置计算的值,必须使用setter。

请参考下面的代码

export default {
  data () {
    return  {
      selectedKinds: []
    }
  },
  computed: {
    selectKinds: {
      set (item) {
        let obj = item

        for (let key in obj) {
           if((key == 'workclothes') || (key == 'siz')) {
             this.selectedKinds.push(obj[key])
           }
        }
      },
      get () {
        return this.selectedKinds
      }
    }
  }
}

这是因为您希望调用在computed中定义的函数,但此函数在get属性上自动调用。如果要筛选,您可以移动到属于公共方法的方法。@我需要返回一个新的对象数组以使用v-for。这就是为什么我把函数放在计算机中。如果我将它放在方法中,我将无法返回任何内容,v-for将失败。对吗?你的函数总是返回新数组,所以我看不到任何问题。你的函数总是返回新数组,所以我看不到任何问题。您可以编写常规筛选函数。您还可以使用{{selectKinds=item.kind\u title}。若您设置了变量selectKinds,那个么计算函数将返回。@对不起,我不明白。我以前编写的所有过滤器函数都是以计算的形式实现的。我以同样的方式使用它们,它们没有任何问题。我的代码中的filterData就是一个例子。为什么我现在有这个错误?哦,我现在有了。谢谢