kiran.kumar M
kiran.kumar M

Reputation: 811

Toomany DOM updates

The link [https://ccamel.github.io/playground-binding.scala/index.html#playground-binding.scala/home] has few demos of binding.scala I have used DomListner extension in chrome to understand the dom events. I found for each interaction there are hundreds of DOM events fired. For example one click on calculator button results in 114 events.

  1. It this a performance issue ?
  2. Does binding.scala library need performance improvements ?
  3. Does the code written using binding.scala need optimization ?

DomListener ScreenShot

Upvotes: 2

Views: 172

Answers (1)

Yang Bo
Yang Bo

Reputation: 3738

It's the expected behavior, because the DEMO that you mentioned recreated anchor elements, explicitly.

According to the Scaladoc for bind method:

Each time the value changes, in the current @dom method, all code after the current bind expression will be re-evaluated

As a result, the calc.bind call at here forces recreating the anchor element.


I created a pull request to change the class attribute instead, by avoiding the calc.bind call before XHTML literals.

Upvotes: 4

Related Questions