Как использовать lodash _.size, чтобы определить, сколько раз свойство появляется в массиве объектов? - PullRequest
0 голосов
/ 15 мая 2019

У меня есть массив объектов, которые я делаю некоторые вычисления с использованием lodash.Я пытаюсь сгруппировать свои расчеты на основе источника разговора.Свойство people указывается в виде строки для каждого объекта.Цель состоит в том, чтобы вывести количество раз, когда свойство people отображается в «источнике разговора», например {разговорSource: reddit, person: 2}

Я использую _.size от lodash довыполнить это.Проблема в том, что он работает при начальной загрузке страницы, но не работает, когда я добавляю дополнительные объекты в массив.Мне интересно, есть ли лучший способ сделать это в lodash.

   get() {
            let convertedData = this.dataOverview
            console.log(convertedData);
            let newData =
            _(convertedData)
            .groupBy('conversationSource')
            .map((objs, key) => ({
                'conversationSource': key,
                'conversationCount': _.sumBy(objs, 'conversationCount'),
                'inter': _.sumBy(objs, 'inter'),
                'chance': _.sumBy(objs, 'chanceSent'),
                'person': _.size(objs, 'person'),
                'personId': _.map(objs, 'personId'),
                'leadsPercent': _.round((_.sumBy(objs, 'leadsSent') / _.sumBy(objs, 'intera') || 0) * 100)
                }))
                .value();
                // console.log(newData);

                return (this.convertedData = newData);
...