Issue #3000💬 RespondidoAbierto el 4 de septiembre de 2020por alemencionesReacciones 0

¿Cómo eliminar una regla de estilo de CssCompoer?

Respuesta rápidapor longdoan7421

Desafortunadamente, GrapesJS no tiene ninguna función integrada como 'CssComposer.removeRule'. Sin embargo, podrías hacerlo con una solución temporal como esta:Obtén todas las reglas usando 'CssComposer.getAll()', te devolverá una Colección Backbone de todas las reglas.Supongo que tienes el modelo de reglas que deberí...

Lee la respuesta completa abajo ↓

Pregunta

Hola tío, estoy intentando eliminar una regla de estilo, ¿alguna antítesis de CssComposer.setRule(".selector") ?

¡Muchas gracias!

Respuestas (2)

longdoan74214 de septiembre de 2020

Desafortunadamente, GrapesJS no tiene ninguna función integrada como 'CssComposer.removeRule'.

Sin embargo, podrías hacerlo con una solución temporal como esta:

  • Obtén todas las reglas usando 'CssComposer.getAll()', te devolverá una Colección Backbone de todas las reglas.
  • Supongo que tienes el modelo de reglas que debería eliminarse, puedes usar el método 'remove' de Backbone Collection para eliminarlo.

'''javascript regla const = /* el modelo de regla que quieres eliminar */; const allRules = editor. CssComposer.getAll(); allRules.remove(ruleModel);


* Si aún no tienes el modelo de reglas, primero necesitas obtener el modelo del selector. Luego, podrías usar el método 'filter' de Backbone Collection para encontrar las reglas. Por último, 'quítalo'.

'''javascript
function removeRule(willBeRemoveSelector) {
  const willBeRemoveSelectorModel = editor. SelectorManager.get(willBeRemoveSelector);
  const allRules = editor. CssComposer.getAll();
  const willBeRemoveRules = allRules.filter(rule =>
    return rule.get('selectors').has(willBeRemoveSelectorModel)
  });
  allRules.remove(willBeRemoveRules);
}

removeRule('.some-class')
artf8 de septiembre de 2020

@longdoan7421 es correcto, pero en la segunda solución usaría 'CssComposer.getRule' directamente '''js const willBeRemoveRules = editor. CssComposer.getRule (willBeRemoveSelector);

Preguntas y respuestas relacionadas

Continúa investigando con debates sobre temas similares.

Plugins de pago que cumplen con este problema

Seleccionado por temas clave y relevancia de etiquetas para ayudarte a enviar más rápido.

Ver todos los plugins

Cargando recomendaciones de plugins de pago...

Opción gratuita

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 →
Opción premium

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.