Rev 11427 | AutorÃa | Comparar con el anterior | Ultima modificación | Ver Log |
import React from "react";
const jsonToParams = (data = {}) => {
if (!data) return false;
else {
let formBody = [];
for (let property in data) {
let encodedKey = encodeURIComponent(property);
//@ts-ignore
let encodedValue = encodeURIComponent(data[property]);
formBody.push(encodedKey + "=" + encodedValue);
}
const _formBody = formBody.join("&");
return _formBody;
}
};
const debounce = (func, timeout = 300) => {
let timer;
return (...args) => {
clearTimeout(timer);
timer = setTimeout(() => {
func.apply(this, args);
}, timeout);
};
};
const useWindowSize = () => {
const [size, setSize] = React.useState([0, 0]);
React.useLayoutEffect(() => {
function updateSize() {
setSize([window.innerWidth, window.innerHeight]);
}
window.addEventListener("resize", updateSize);
updateSize();
return () => window.removeEventListener("resize", updateSize);
}, []);
return size;
};
export { useWindowSize, jsonToParams, debounce };