Buenas noches comunidad. Estoy intentando hacer que al darle click a un botón me arroje los siguientes 20 resultados de búsqueda en la Api Marvel. El valor por defecto es offset=0 .
La página brinda 20 personajes por respuesta, si uno quiere ver los siguiente 20, en la URL debe cambiar el valor offset. Por lo tanto para que funcione solo debo incrementar offset en 20 cada vez que se haga clic.
Mi problema es que no logro hacer un incremento que tenga efecto fuera de la función (función sumar()). Se que es un problema de scope. He repaso la teoría de funciones... Por horas. Pero no doy con la solución.
Por último en vez de declara una variable para el incremento he declaró un objeto... Pero tampoco me función. En la URL intenfo incrementa el valor de num.page.
Les dejo un fragmento del código.
class App {
constructor(page) {
this.page = page
}
}
let i = 0
const sumar = () => {
i += 20
num = new App(i)
return num
}
sumar()
sumar()
sumar()
sumar()
sumar()
c(num.page)
next.addEventListener('click', () => {
sumar()
})
const getConection = () => {
const ts = Date.now(),
hash = md5(ts + privateKey + publicKey),
URL = `http://gateway.marvel.com/v1/public/characters?ts=${ts}&apikey=${publicKey}&hash=${hash}&offset=${num.page}`
fetch(URL)
.then(response => response.json())
.then(response => {
response.data.results.forEach(e => {
showHero(e)