Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

115
Views
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 answers
Answer question

0

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

about 4 years ago · Juan Pablo Isaza Report

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!