Envuelvo el href a la URL e intento eliminar un componente, lo elimino con delete , pero el componente no desaparece. ¿Sabes por qué?
let url = new URL(window.location.href); let p = url.searchParams['postId'+$(".selected").length]; delete p; window.location = url.toString();Intenté esto:
const filteredItems = url.searchParams.filter(key => url.searchParams[key] == postID); let key = filteredItems.keys.first; url.searchParams.delete(key);pero dice
TypeError no detectado: url.searchParams.filter no es una función
Probé ahora esta expresión, pero el filter no funciona, ¿tienes idea de por qué?
function togglePost(postID) { let url = new URL(window.location.href); const filteredItems = Object.keys(url.searchParams).filter(key => url.searchParams[key] == postID ); let key = filteredItems.keys.first;El operador de delete elimina las propiedades de los objetos .
Está intentando eliminar una variable. Esto falla en silencio.
Para eliminar algo de un objeto URLSearchParams, use el método de delete :
let url = new URL('http://example.com/foo.cgi?a=1&b=2'); console.log(url.toString()); url.searchParams.delete('a'); console.log(url.toString());