knockout issue #2492 (.extend({ rateLimit: x }))
by fastfasterfastest
HTML
<script src="https://knockoutjs.com/downloads/knockout-3.5.0.js"></script>
JavaScript
let count = 0;
let start = Date.now();
let isError = () => false;
let isSuccess = () => true;
let isLoading = ko.observable(false);
let isLoadingOrError = ko.computed(() => {
console.log((Date.now() - start) + 'ms - isLoadingOrError');
return isLoading() || isError();
}).extend({ rateLimit: 50});
let isLoadingOrSuccess = ko.computed(() => {
console.log((Date.now() - start) + 'ms - isLoadingOrSuccess');
return isLoading() || isSuccess();
});
let intervalId = setInterval(() => {
if(count > 100){
clearInterval(intervalId);
}
++count;
isLoading(!isLoading());
}, 2);