• Jobs
  • About Us
  • Jobs
    • Home
    • Jobs
    • Courses and challenges
  • Businesses
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Hire tech talent
    • Blog
    • Sales
    • Salary Calculator

0

183
Views
Sortable.js convención de nomenclatura no coincidente con elementos secundarios

Estoy trabajando en un sitio web de WordPress y quiero que el usuario pueda reordenar los widgets de la barra lateral incluso si el sitio se vuelve a cargar.

Así que estoy usando Sortable JS y usando el guardado y la restauración del tipo , ya que planeo almacenarlo en localStorage pero no pude hacerlo funcionar. Es bastante sencillo en la documentación y la demostración, pero por alguna razón, no funciona para mí y no estoy seguro de lo que me estoy perdiendo.

A continuación se muestra la clasificación predeterminada de los elementos.

ingrese la descripción de la imagen aquí

Y una vez que reordeno estos widgets, obtengo este resultado.

ingrese la descripción de la imagen aquí

Creo que el problema fue que el nombre de las teclas es incorrecto. Vea el texto resaltado con azul en la imagen a continuación. Falta en la matriz llamada desde el método set.

ingrese la descripción de la imagen aquí

Entonces, lo resaltado en azul aquí es el registro del método get: function (sortable) y la salida de la matriz es del set: function (sortable) .

Aquí hay un video rápido para verlo más claro.

A continuación se muestra mi código.

 let el = document.getElementById('sticky-sidebar'); Sortable.create(el, { group: 'foo', animation: 100, draggable: ".widget_block", store: { /** * Get the order of elements. Called once during initialization. * @param {Sortable} sortable * @returns {Array} */ get: function (sortable) { var order = localStorage.getItem(sortable.options.group.name); console.log(order) return order ? order.split('|') : []; }, /** * Save the order of elements. Called onEnd (when the item is dropped). * @param {Sortable} sortable */ set: function (sortable) { var order = sortable.toArray(); console.log(order) localStorage.setItem(sortable.options.group.name, order.join('|')); } } });
almost 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

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