LearnNewsExamplesServices
Frontmatter
id2661
titlecomponent.Base: promiseVdomUpdate() => honor the silentVdomUpdate state
stateClosed
labels
enhancement
assigneestobiu
createdAtJul 31, 2021, 7:03 PM
updatedAtJul 31, 2021, 7:03 PM
githubUrlhttps://github.com/neomjs/neo/issues/2661
authortobiu
commentsCount0
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtJul 31, 2021, 7:03 PM

component.Base: promiseVdomUpdate() => honor the silentVdomUpdate state

Closed v8.1.0 enhancement
tobiu
tobiu commented on Jul 31, 2021, 7:03 PM

I have been chasing down this one for quite a while.

When calling component.set() or manually locking a cmp for updates, most afterSet() methods are using me.vdom = vdoM;.

However, there are spots where I am using me.promiseVdomUpdate() instead to use the callback.

Those calls were bypassing the silent flag, which can trigger additional delta engine calls. The mean thing is that in those cases, the new vnode is not in place yet (the engine works async inside the vdom worker), which can lead to duplicate dom updates and result in errors.

tobiu added the enhancement label on Jul 31, 2021, 7:03 PM
tobiu assigned to @tobiu on Jul 31, 2021, 7:03 PM
tobiu referenced in commit da1fab3 - "component.Base: promiseVdomUpdate() => honor the silentVdomUpdate state #2661" on Jul 31, 2021, 7:03 PM
tobiu closed this issue on Jul 31, 2021, 7:03 PM