Переглянути джерело

don't propagate binding if value is unchanged

Falko Schindler 2 роки тому
батько
коміт
6a565cd51f
1 змінених файлів з 3 додано та 1 видалено
  1. 3 1
      nicegui/binding.py

+ 3 - 1
nicegui/binding.py

@@ -86,8 +86,10 @@ class BindableProperty:
 
     def __set__(self, owner: Any, value: Any):
         value_changed = getattr(owner, '_' + self.name, value) != value
+        if not value_changed:
+            return
         setattr(owner, '_' + self.name, value)
         bindable_properties[(id(owner), self.name)] = owner
         update_views(propagate(owner, self.name))
-        if value_changed and self.on_change is not None:
+        if self.on_change is not None:
             self.on_change(owner, value)