BUG: getDirtyCount() non deterministic after load
Question
GrapesJS version
- I confirm to use the latest version of GrapesJS
What browser are you using?
Chrome
Reproducible demo link
https://github.com/padcom/grapesjs-bug-dirty-count-non-deterministic/blob/master/index.html
Describe the bug
Currently, when the user calls await load() the dirty count is zero. Only after the next event loop or later the count is increased. Therefore:
await editor.load()
console.log(editor.getDirtyCount())
prints out 0 but after a milisecond:
setTimeout(() => console.log(editor.getDirtyCount(), 1)
the number of changes is 1.
Expected behavior is that after awaiting the call to load(), if indeed as described in #5373 the editor is changed it should be so immediately after the call to load()
### Code of Conduct
- [X] I agree to follow this project's Code of Conduct
Answers (3)
Added also load options in order to clear the editor internal state post load
const storageOptions = {};
const loadOptions = { clear: true };
await editor.load(storageOptions, loadOptions);
editor.getDirtyCount(); // should always be 0 post load
Thank you! Looking forward to the next release!
Already available here https://github.com/GrapesJS/grapesjs/releases/tag/v0.21.6
Related Questions and Answers
Continue research with similar issue discussions.
Issue #5373
BUG: `getDirtyCount()` returns `1` after loading
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome latest Reproducible demo link https...
Issue #6116
BUG: asDocument not working as expected
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome 128 Reproducible demo link https://...
Issue #4732
BUG: Tabs behaviour after HTML import
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome 107 (MacOS) Reproducible demo link...
Issue #5144
BUG: Incorrect type definition for PanelManager.addPanel
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? All Reproducible demo link None Describe t...
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.