Cómo crear un bloque con contenido HTML, CSS y JavaScript.
¡Hola! Lo que buscas es aquí editor. DomComponents.addType('custom-type',{ modelo:{ valores predeterminados:{ script: función () { console.log('hola mundo'); } }, isComponent(){ Retorno verdadero } }, }) Debes definir el tipo personalizado antes de tu definición de bloque. Luego, en tu contenido de bloque, modifica es...
Lee la respuesta completa abajo ↓Pregunta
¿Alguien podría mostrarme un ejemplo de código de cómo crear un bloque con estilos javascript y css? '''js
editor. BlockManager.add('a_block', { etiqueta: 'Sample Block', Contenido: '<style> .sampleclass{ acolchado: 10px 15px; } .sampleclass2{ opacidad:0; visibilidad:oculta; } .sampleclass:hover > .sampleclass2{ visibilidad:visible; opacidad:1; }
@media (ancho máximo: 768px){
.sampleclass{
ancho:100%;
}
}
</style>
<div class="samplecalss">Text<div class="sampleclass2"><div><a>A Enlace</a></div></div>
<script>
console.log('hola mundo');
</script>
`,
atributos: {
título: 'Bloque A'
},
});
El principal problema es que el código js se añade justo después del html en lugar de al final del archivo
Respuestas (3)
¡Hola! Lo que buscas es [aquí](https://grapesjs.com/docs/modules/Components-js.html)
`
editor. DomComponents.addType('custom-type',{
modelo:{
valores predeterminados:{
script: función () {
console.log('hola mundo');
}
},
isComponent(){
Retorno verdadero
}
},
})
`
Debes **definir el tipo personalizado** antes de tu **definición de bloque**.
Luego, en tu contenido de bloque, modifica esta línea para inyectar tu tipo:
`
<div data-gjs-type="custom-type" class="sampleclass">Text<div class="sampleclass2"><div><a>A Enlace</a></div></div></div>
`
**Fíjate** que para usar tipos personalizados, deben estar definidos en un plugin por el momento. Más información [aquí](https://grapesjs.com/docs/modules/Plugins.html)
Salud.Gracias.
Gracias.
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #2596
[PREGUNTA] Añadir html, css y js a Block Manager
[PREGUNTA] ¡Hola! Estoy recuperando códigos dinámicos html, css y js de la base de datos. ¿Cómo puedo crear bloques con esto? Actualmente,...
Issue #792
La propiedad de script usando función no funciona con bloques
En la documentación de Componentes & JS hay este ejemplo: Esto funciona perfectamente. Pero no podría usar una función en lugar de una cade...
Issue #958
No se puede crear una ventana emergente usando bootbox ni de ninguna otra forma.
No se puede crear una ventana emergente en el bootbox. A continuación está mi código:- var blockManager = editor. Jefe de bloque; blockMana...
Issue #3207
El formulario no se está enviando
Estoy intentando crear un bloque personalizado. Pero el formulario no se envia cuando uso 'componentes' dentro del contenido. Puedo obtener...
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 →Tutoriales relacionados
Guías detalladas sobre el mismo tema.
Tutorial
Ship to Production Faster: What’s New in GrapesJS Shadcn
Supercharge your page builder! GrapesJS Shadcn adds live drag previews, rich text / commands, dynamic data, and canvas presets to ship to prod faster.
Tutorial
Preset DevFuture 2.0 — New Update Released
Preset continues evolving as a clean, production-ready starting point for building visual editors powered by GrapesJS
Tutorial
How Much Can You Earn on GJS.Market in a Month?
Discover how DevFuture earns €2,000+ monthly on GJS.Market — and learn how you can start building and selling your own GrapesJS plugins.
Explorar categorías de plugins
Ve directamente a las páginas de categorías de plugins en el marketplace.