Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

107
Visualizações
Escriba Error después de agregar almacenamiento local a la tienda

En la carga de la página inicial, aparece un error de tipo:

500
$rating.join no es una función
TypeError: $rating.join no es una función

Esto se detiene después de un cambio de página, por ejemplo, al ir a la página Acerca de y luego volver a la página de índice, se cargará correctamente.

¿Estoy pensando que es un problema de orden de operaciones? ¿Reparado por onMount? Simplemente no estoy seguro de cómo implementarlo.

 // Store export const rating = writable(browser && (JSON.parse(sessionStorage.getItem("rating")) || [])) rating.subscribe((val) => browser && sessionStorage.setItem("rating", JSON.stringify(val))) // Filters Component <script> import {rating} from "../stores/items"; const ratings = [1, 2, 3, 4, 5]; </script> <div class="flex justify-center"> <!-- Ratings Filter --> <div class="multiselect"> <div class="selectBox rounded-sm shadow2 m-1 px-1" on:click={multiselect}> <select> <option >{#if $rating.length === 0} Rating: {:else} {$rating.join(", ")} {/if}</option > </select> <div class="overSelect dropdown" /> </div> <div class="checkboxes" id="ratingDropdown"> {#each ratings as ratings} <div class="flex"> <input type="checkbox" id={ratings} name="typeValues" bind:group={$rating} value={ratings} class="dropdown" /> <label for={ratings} class="dropdown">{ratings}</label> </div> {/each} </div> </div>

Cualquier ayuda será apreciada, gracias.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

console.log ($rating) y vea lo que obtiene.

about 4 years ago · Juan Pablo Isaza Relatório

0

Creo que tus paréntesis están mal en la llamada inicial.

 const rating = writable( browser && (JSON.parse(sessionStorage.getItem("rating")) || []) )

Esto significaría que durante SSR la calificación será false

Probablemente quieras cambiarlos de lugar:

 const rating = writable( (browser && JSON.parse(sessionStorage.getItem("rating"))) || [] )

De esta manera, cuando el navegador sea falso, obtendrá una matriz vacía.

(El formateo incómodo es intentar que sea visible lo que sucede)

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda