javascript - Lodash 与过滤器中的 OR 逻辑

标签 javascript lodash

我想在我的lodash _.filter中实现这个逻辑

if (bolMine && !bolUnassigned)
{
    o => o.AssignedDriver == CurrentLoggedOnUser;
}
else if (bolMine && bolUnassigned)
{
     o => (o.AssignedDriver == CurrentLoggedOnUser || o.AssignedDriver == 0);
}
else if (!bolMine && bolUnassigned)
{
     o => o.AssignedDriver == CurrentLoggedOnUser;
}


if (bolExvat)
{
    o => o.ExVatOrder == bolExtVat;
}

if(intCategory > 0)

{

    o => o.OrderCategory == intCategory

}

如何将其转换为我的 iteratee?

 this.filteredOrders = _.filter(this.orders, iteratee);

最佳答案

function filterOrders(o) {
    if (bolMine && !bolUnassigned)
    {
        return o.AssignedDriver == CurrentLoggedOnUser;
    }
    else if (bolMine && bolUnassigned)
    {
        return (o.AssignedDriver == CurrentLoggedOnUser || o.AssignedDriver == 0);
    }
    else if (!bolMine && bolUnassigned)
    {
        return o.AssignedDriver == CurrentLoggedOnUser;
    }


    if (bolExvat)
    {
        return o.ExVatOrder == bolExtVat;
    }

    if(intCategory > 0)
    {
        return o.OrderCategory == intCategory
    }
}

this.filteredOrders = _.filter(this.orders, filterOrders);

关于javascript - Lodash 与过滤器中的 OR 逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44136924/

相关文章:

javascript - 向我的图片库添加一个功能,允许图片在新窗口中打开

javascript - 更改路由时在 react.js 中获取一个非常神秘的消息

javascript - AngularJS - 使用 lodash 更好地过滤集合中的集合

javascript - lodash - 基于多个属性创建唯一列表

javascript - 使用 lodash 进行数据操作(某种左连接)

javascript - 代码在不应该生效的时候生效

Javascript 导航悬停效果

javascript - javascript中的最佳算法分组数据

javascript - 在lodash中, `pairs()`的相反是什么?

javascript - 访问已解决的 promise 对象属性