El atributo src del marcador de posición de imagen predeterminado se genera/exporta como <svg> elemento
Pregunta
Hola, ¡y gracias por la gran biblioteca!
Quizá hayamos encontrado el siguiente error jugando con él:
Al añadir un nuevo "Bloque de Imagen" por defecto sin más configuración (dejando el marcador de posición de imagen por defecto), el código HTML exportado/generado incrusta el elemento 'svg' por defecto como el valor del atributo 'src' de la imagen (véanse las capturas de pantalla adjuntas).
! Captura de pantalla 2020-03-03 a las 16:31 16:00 ! Captura de pantalla 2020-03-03 a las 16:31
Tras profundizar un poco en el código, parece que la función 'getAttrToHTML' de 'grapesjs/src/dom_components/model/ComponentImage.js's debería llamar a 'this.getSrcResult' (no estoy seguro de si usar la opción 'fallback') en lugar de 'this.get('src')' para recuperar el atributo 'src' de imagen codificada en base64 (cf. https://github.com/artf/grapesjs/blob/dev/src/dom_components/model/ComponentImage.js#L78).
Nota: esto no satisfaría un caso en el que la opción 'embedAsBase64' estuviera configurada como 'false', quizá en este caso se podría usar una URL marcadora de imagen pública (por determinar)?
Estaré encantado de abrir un PR para arreglarlo, cuéntame :)
Respuestas (2)
¡Gracias! #2620 abierto.
Gracias por el informe, Mathieu
función getAttrToHTML de grapesjs/src/dom_components/model/ComponentImage.js debería llamar this.getSrcResult (no estoy seguro de si usar la opción de respaldo) en lugar de this.get('src') para recuperar el atributo src de imagen codificada en base64
Correcto, ignora la opción de respaldo, se usa en el lienzo solo cuando la imagen no se carga.
Nota: esto no satisfaría un caso en el que la opción embedAsBase64 estuviera configurada como falsa, quizá en este caso se podría usar una URL marcadora de imagen pública (por determinar)?
La opción 'embedAsBase64' es para la subida del archivo, esto no tiene nada que ver con este problema
Así que... ¡adelante, por la marca personal! 👍
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #826
[Bug] El ID generado automáticamente por elementos no se vuelve a añadir después de usar el ID personalizado y luego borrarse
Hola, Creo que hay un error relacionado con la generación de atributos de id de elemento. Al modificar el estilo del elemento, el valor del...
Issue #1912
[PREGUNTA] Componentes personalizados hijos por defecto
Hola, Estoy intentando entender cómo puedo lograr lo siguiente.Crear un componente con un contenido predeterminado como hijos.Crea un bloqu...
Issue #2640
Añadir atributos extra con Stylemanager para cambiar el atributo del bloque seleccionado
Gracias por este plugin tan increíble. Lo estoy integrando con mi proyecto actual. Tengo un problema con ello. Aquí está mi código, he añad...
Issue #2297
[Pregunta] Añade un script usando arrastrar y soltar que añadirá elementos dinámicamente
Hola. Gracias por este gran proyecto. Lo estoy usando en uno de mis proyectos y necesito ayuda. 1- Tengo un elemento de bloque con un scrip...
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.