Objetos en interpolaciones de scripts
Aún no hay respuestas de la comunidad. Abre la discusión original en GitHub para compartir tu solución.
Pregunta
Describe el error (esto no ocurre en la última versión, este problema no es válido).
Supongamos que tenemos una propiedad en nuestro modelo de componente que es un objeto. luego intenta interpolar esta propiedad en script: lo que obtendrás es una cadena '[objeto Objeto]'.
Pasos para reproducir el comportamiento
- Crear un tipo de componente personalizado.
- Dentro del modelo, crea una propiedad como esta: ''Test:{a:1,b:2}''
- Dentro del modelo, crear una función de script.
- Dentro de la función script, crea una variable así: ''const test = '{[ test ]}'''
- log el valor analizado: ''console.log(JSON.parse(test))''
- se mostrará un error respecto al análisis sintáctico JSON.
Comportamiento esperado: la interpolación de una propiedad de objeto nos daría una cadena JSON que puede analizarse para lograr el objeto original.
Fragmentos de código: basado en la operación de aquí estamos usando ''JSON.stringify'' para los tipos de array y objetos. Así que, como algo como ''console.log(JSON.parse(JSON.stringify({a:1,b:2}))'' funciona, esperamos los mismos resultados aquí. Aunque podríamos superar este escenario usando plantillas etiquetadas, la forma en que transformamos las funciones de script en cadenas anulará el comportamiento original de los literales de la plantilla:
-- esto no es posible dentro del guion --
plantilla de función(chunks, ... interpolaciones) {
console.log(fragmentos); // ['1 ', ' 3']
console.log(interpolaciones); // [2]
}
plantilla '1 ${2} 3';
¡Salud!
Respuestas (0)
Aún no hay respuestas.
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #4600
Tras la actualización a la 0.20 desde la 0.19, ocurre el error No puede asignar a solo lectura la propiedad 'defaults' del objeto '[objeto Objeto]'
Versión GrapesJS [X] Confirmo que se debe usar la última versión de GrapesJS ¿Qué navegador usas? Chrome Enlace de demo reproducible ningun...
Issue #3295
ERROR (v0.16.41): Componente de botón con propiedad arrastrable no funciona correctamente
Versión: v0.16.41 ¿Puedes reproducir el error de la demo? [ ] Sí [ ] No ¿Cuál es el comportamiento esperado? Cuando tenemos un botón con la...
Issue #4575
Falta el personalizado en el AssetManagerConfig
Versión GrapesJS [X] Confirmo que se debe usar la última versión de GrapesJS ¿Qué navegador usas? Chrome Enlace de demo reproducible Esto e...
Issue #1295
[Bug]: Falta el campo de selección de unidad en IE tras hacer clic
@artf actualmente estoy usando la última versión de GrapesJS (pero puedes reproducir este error usando la demo). Básicamente, solo tienes q...
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.