RemoveChildren en Components.js ejecutándose con un componente indefinido
Gracias, Juan, todo bien y te espero lo mismo :)Esto se puede solucionar simplemente devolviendo si el parámetro eliminado es falso, pero quizá sea demasiado poco fiable y debería buscar otra solución y no hacer que el componente elimine a su padre. Bueno, técnicamente 'removeChildren' no debería llamarse "sin" 'remov...
Lee la respuesta completa abajo ↓Pregunta
Hola @artf mucho tiempo, espero que todo vaya bien contigo y tus seres cercanos.
Hay un pequeño caso que quería preguntar qué opinas antes de hacer una petición.
Tengo un componente de enlace personalizado que está envolvido alrededor de una etiqueta li, este enlace tiene un evento para eliminar su li padre cuando se elimina.
Si borro el enlace directamente, todo funciona bien, pero si elimino un padre externo que contiene componentes tanto de li como de enlace, removeChildren en Components.js se ejecuta con un componente indefinido, causando este error
Uncaught TypeError: no se puede acceder a la propiedad "getId", eliminado está indefinido
removeChildren Components.js:30
Esto se debe a que el objeto se elimina durante otra callback (la personalizada que hice) antes de que removeChildren reciba el parámetro.
Esto se puede solucionar simplemente devolviendo si el parámetro eliminado es falso, pero quizá sea demasiado inútil y debería buscar otra solución y no hacer que el componente elimine su padre.
removeChildren(removed, coll, opts = {}) {
if (!eliminado) {
regresar;
}
¿Qué opinas?
¡Gracias!
Respuestas (1)
Gracias, Juan, todo bien y te espero lo mismo :)
Esto se puede solucionar simplemente devolviendo si el parámetro eliminado es falso, pero quizá sea demasiado poco fiable y debería buscar otra solución y no hacer que el componente elimine a su padre.
Bueno, técnicamente 'removeChildren' no debería llamarse "sin" 'removed', así que si esa condición soluciona tu problema creo que está bien. También creo que tu caso podría ser usado por otra persona
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #2522
Advertencia sobre cómo ajustar la altura del envoltorio al 100%
Hola @artf espero que todo vaya bien. Esto es más bien un recordatorio o un mensaje de advertencia sobre un problema que acabo de tener y q...
Issue #1509
Cómo desactivar el botón de deshacer
Hola @artf, Espero que te vaya bien con uvas. ¿Podrías decirnos cómo desactivar el botón de deshacer cuando no hay datos en el administrado...
Issue #851
[SOLICITUD DE FUNCIÓN] Plugins de retorno de promesas
Hola @artf, Tengo un caso en el que un plugin personalizado necesita comprobar los permisos de usuario antes de hacer cualquier tipo de ini...
Issue #3212
Componente Lightbox
Hola @artf Estoy intentando hacer una caja de luz por componentes igual que la gota de uva. No puedo actualizar la parte inicial de la imag...
Plugins de pago que cumplen con este problema
Seleccionado por temas clave y relevancia de etiquetas para ayudarte a enviar más rápido.
Cargando recomendaciones de plugins de pago...
Consulta los plugins de código abierto de GrapesJS en GitHub O haz una búsqueda rápida en nuestro catálogo gratuito.
Explora plugins gratuitos →Los plugins premium incluyen soporte, actualizaciones regulares y funciones listas para producción — ahorrando días de trabajo de integración.
Explora plugins premium →Explorar categorías de plugins
Ve directamente a las páginas de categorías de plugins en el marketplace.