Así que tengo una API para películas y tengo un botón que debería mostrar películas de un género en particular cuando se hace clic. Por ejemplo, el botón es algo como esto:
<span>action</span>Y la URL de mi API se ve así: https://api.themoviedb.org/3/discover/movie?api_key={api_key}&sort_by=popularity.desc&with_genres=80&page=4
Entonces, como puede ver, debería insertar en with_genres param cualquier otro número de género, así que escribí una función para ello:
function genreChoose(e){ let genres = { action: 80 } let url = new URL(lastUrl); url.searchParams.set('with_genres', genres.action) fetchURL(url); } Creé un objeto de géneros, y cuando hago clic en el género <span> desde arriba, debería pasar texto interno como clave de objeto, por lo que un texto en el intervalo y una clave en el objeto de géneros son ambos "acción". Supongo que hacerlo como url.searchParams.set('with_genres', genres.e.innerText) no funciona, así que estoy buscando una forma de pasar el texto interno de <span> como valor de objeto.
Por ejemplo:
const button = document.querySelector('button'); function genreChoose(e) { let genres = { action: 80 }; let url = new URL('https://api.themoviedb.org/3/discover/movie'); url.searchParams.set('with_genres', genres[e.target.innerText]); console.log(url); } button.addEventListener('click', genreChoose); <button>action</button>