gpt4 book ai didi

javascript - 在 vuejs 中使用条件 inside filter()?

转载 作者:行者123 更新时间:2023-11-30 13:47:05 24 4
gpt4 key购买 nike

我想在 vuejs 中的 filter() 函数中使用条件,但在 || 之后出现错误如果

这是我的代码:

return this.produits.filter((item) => {
return (
item.codeproduct == this.codebar ||
if (item.produitbrand) {
for (let i = 0; i < item.produitbrand.length; i++) {
if (item.produitbrand[i].brandsubproduit) {
for (let e = 0; e < item.produitbrand[i].brandsubproduit[e].length; e++) {
item.produitbrand[i].brandsubproduit[e].codeproduct == this.codebar
}
}
}
});
})

任何方向?谢谢。

更新:这是我的错误: Error message

最佳答案

iffor 语句不允许出现在表达式中。

return ( 开始一个表达式。

如果我理解正确你想做什么,你应该这样写:

return this.produits.filter((item) => {
if (item.codeproduct == this.codebar) {
return true;
}
if (item.produitbrand) {
for (let i = 0; i < item.produitbrand.length; i++) {
if (item.produitbrand[i].brandsubproduit) {
for (let e = 0; e < item.produitbrand[i].brandsubproduit.length; e++) {
if (item.produitbrand[i].brandsubproduit[e].codeproduct == this.codebar) {
return true;
}
}
}
}
}
return false;
});

这确实是风格问题,但会这样写:

return this.produits.filter(item => {
if (item.codeproduct == this.codebar) return true;
for (let { brandsubproduit } of item.produitbrand || [])
for (let { codeproduct } of brandsubproduit || [])
if (codeproduct == this.codebar) return true;
return false;
});

关于javascript - 在 vuejs 中使用条件 inside filter()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59091788/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com