Comments (1)
The issue is that the two events fire very close together:
1. "onkeydown" fires
2. "redraw" is called, it queues up "dodraw" to run
3. "dodraw" starts rerendering
4. "onblur" fires
5. "redraw" is called, but it does *not* queue up dodraw, as the diffing/rerendering is still happening
6. "dodraw" finishes the rerender
The result being that Karax renders the changes from the onkeydown
callback only.
Karax uses kxi.renderId
to prevent adding multiple dodraw
calls to the queue, but it also uses the renderId to stop dodraw
being queued while a render is happening. I think this needs to be changed so that:
dodraw
cannot be queued multiple times- If
dodraw
fires while it is already running, simply queue anotherdodraw
and return
PR incoming.
from karax.
Related Issues (20)
- Deprecate tree procs HOT 2
- `checked` doesn't get updated HOT 1
- StyleAttr.cssFloat should use the float css property name HOT 5
- Server-side render broken HOT 1
- cannot install karax via nimble in windows HOT 1
- Css variables HOT 1
- `loadScript` proc expects `body` to have id
- verbatim shouldn't create a wrapper div HOT 7
- bulma icon HOT 2
- vstyles setAttr not changing displayed VNode HOT 7
- htmx not getting data. HOT 2
- Abandoned project? HOT 3
- Update the package structure for Nimble HOT 1
- Please release a new version HOT 3
- There is no easy way to use custom tags (like <dialog>) HOT 4
- Wrong `app.js` directory (`karun`) HOT 1
- Delay in redrawing dom HOT 6
- buildHtml does not capture closure variables HOT 2
- Broken functionalities when karax used with grammarly or languagetool (and possibly other extensions) HOT 8
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from karax.