Vue.js上的组合复选框过滤器

Vue.js上的组合复选框过滤器,vue.js,filtering,Vue.js,Filtering,我正在处理我的第一个Vue.js项目,该项目包含JSON数据,应该通过几个属性进行过滤。 我需要在Vue.js上设置复选框过滤器。我有两个。它们是分开工作的,但当我尝试将它们组合起来时,它们就不工作了。这是我的密码: {{userId}} {{id} {{job.id}}{{job.title}} {{job.body} {{job.id}}{{job.title}} {{job.body} 从“axios”导入axios; 导出默认值{ 名称:“复选框”, 数据(){ 返回{ 职位:[

我正在处理我的第一个Vue.js项目,该项目包含JSON数据,应该通过几个属性进行过滤。 我需要在Vue.js上设置复选框过滤器。我有两个。它们是分开工作的,但当我尝试将它们组合起来时,它们就不工作了。这是我的密码:


{{userId}}

{{id}
{{job.id}}{{job.title}} {{job.body} {{job.id}}{{job.title}} {{job.body}
从“axios”导入axios;
导出默认值{
名称:“复选框”,
数据(){
返回{
职位:[],
用户标识:[1,2,3],
ID:[1,2,3,4,5,6,7,8,9,10],
checkedUserID:[],
checkedds:[]
};
},
创建(){
axios
.get(“https://jsonplaceholder.typicode.com/posts")
.然后(response=>(this.jobs=response.data));
},
计算:{
filteredJobs1(){
如果(!this.checkedUserID.length)返回this.jobs;
返回this.jobs.filter(job=>this.checkedUserId.includes(job.userId));
},
filteredJobs2(){
如果(!this.checkedds.length)返回this.jobs;
返回this.jobs.filter(job=>this.checkedds.includes(job.id));
}
}
};
我试过这么做,但没有成功

计算:{
filteredJobs:function(){
把这个还给我,乔布斯
.filter(job=>this.checkedUserId.includes(job.userId))
.filter(job=>this.checkedds.includes(job.id))
}
}

假设没有选中任何一个过滤器的复选框,则您不想应用该过滤器,类似的操作应该可以

计算:{
filteredJobs(){
返回this.jobs.filter({id,userId})=>{
返回(this.checkedUserId.length==0 | | this.checkedUserId.includes(userId))
&&(this.checkedds.length==0 | | this.checkedds.includes(id))
})
}
}
您的
filteredJobs
computed属性有什么“不起作用”?您可能可以将这些条件组合成一个
.filter()
,但它看起来应该按原样工作