BUG: Css edits aren't persisted to the DOM
Question
GrapesJS version
- I confirm to use the latest version of GrapesJS
What browser are you using?
Chrome Version 109.0.5414.87
Describe the bug
How to reproduce the bug?
- Create a @keyframes animation on the GrapesJS canvas
@keyframes appear_1234{
0%: {opacity:0};
100%: {opacity:100%}
}
In JS, create a new CssRule by passing the following string into editor.Css.addRules:
let updatedRule = `@keyframes appear_1234{
0%: {opacity:0};
100%: {opacity:90%};
}`
- Add it to the canvas:
editor.Css.addRules(updatedRule)
What is the expected behavior? The DOM should be updated
What is the current behavior?
The DOM is not updated. HOWEVER, if I call editor.getCss(), I can see the correct value for opacity is returning.
If is necessary to execute some code in order to reproduce the bug, paste it here below:
function setup(){
let initialAnimation = `
@keyframes appear_1234{
0%: {opacity:0};
100%: {opacity:100%}
}
`
editor.Css.addRules(initialAnimation);
}
function update(){
let updatedAnimation = `
@keyframes appear_1234{
0%: {opacity:0};
100%: {opacity:90%}
}
`
editor.Css.addRules(updatedAnimation);
}
setup()
update()
//DOM is not updated.
//Css string is updated though
editor.getCss()
Code of Conduct
- I agree to follow this project's Code of Conduct
Answers (2)
Seems to be related to CssGroupRuleView here. In case of at-rules like @keyframes we have to force the re-render of the parent container.
@artf facing this issue again with editor.CssComposer.remove(myCssRule)
the editor css removes the rule but it's not flushed through to the DOM. How to you recommend I force re-render of the DOM while keeping the state of my editor intact? editor.refresh isn't flushing the styles to the DOM
Related Questions and Answers
Continue research with similar issue discussions.
Issue #4323
BUG: Performance issue while dragging component to canvas when you have 2k component on canvas
GrapesJS version[X] I confirm to use the latest version of GrapesJSWhat browser are you using? Google Chrome Version 101.0.4951.41 (Officia...
Issue #4497
BUG: Updating to GrapesJS v19.5 from v18.4 results in Chrome becoming unresponsive
GrapesJS version[x] I confirm to use the latest version of GrapesJSWhat browser are you using? Chrome 104.0.5112.79Reproducible demo link h...
Issue #4310
BUG: Style Manager is inaccurate when using combined CSS selectors which contains "bout" and componentFirst = true
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome 100 Reproducible demo link https://...
Issue #761
Text component problem
Hi. I wish a text component that do not create new components every time I press "Enter" key to create new paragraphs (this is a bad usabil...
Paid Plugins That Match This Issue
Curated by issue keywords and label relevance to help you ship faster.
Loading paid plugin recommendations...
Browse Plugin Categories
Jump directly to plugin category pages on the marketplace.