Проблема вызвана вашим шаблоном руля.В атрибуте data-increment
вы используете metadata[stargazers_count]
, что вызывает сбой.
Обратите внимание, что не рекомендуется размещать много логики в вашем шаблоне руля.Итак, чтобы решить вашу проблему, я бы вычислил значение increment
и добавил бы его к вашему metadata
объекту так:
function parseData(response, user) {
var checkLang = {};
const metadata = response.reduce(function(acc, currentItem) {
acc.stargazers_count += currentItem.stargazers_count;
if (checkLang[currentItem.language]) {
checkLang[currentItem.language] = checkLang[currentItem.language] + 1;
} else {
checkLang[currentItem.language] = 1;
}
return acc;
}, { stargazers_count: 0 });
metadata["languages"] = Object.keys(checkLang).map(item => {
return {
value: (checkLang[item] / response.length) * 100,
title: item
};
});
metadata["mainlanguage"] = Object.keys(checkLang).reduce(function(a, b) {
return checkLang[a] > checkLang[b] ? a : b;
});
metadata.increment = metadata.stargazers_count / 10 > 0 ? metadata.stargazers_count / 10 : 1;
return metadata;
}
Я добавляю атрибут increment
со значением, которое вы пыталисьвычислить в шаблоне руля.
Теперь вашему шаблону руля нужно использовать только этот атрибут:
<div
class="meta-value numscroller"
data-max="{{ metadata.stargazers_count }}"
data-min="0"
data-delay="1"
data-increment="{{ metadata.increment }}"
>
{{ metadata.stargazers_count }}
</div>