Showing
2 changed files
with
8 additions
and
1 deletions
@@ -108,11 +108,17 @@ abstract class GetNotifier<T> extends Value<T> with GetLifeCycle { | @@ -108,11 +108,17 @@ abstract class GetNotifier<T> extends Value<T> with GetLifeCycle { | ||
108 | 108 | ||
109 | @protected | 109 | @protected |
110 | void change(T newState, {RxStatus status}) { | 110 | void change(T newState, {RxStatus status}) { |
111 | + var _canUpdate = false; | ||
111 | if (status != null) { | 112 | if (status != null) { |
112 | _status = status; | 113 | _status = status; |
114 | + _canUpdate = true; | ||
113 | } | 115 | } |
114 | if (newState != _value) { | 116 | if (newState != _value) { |
115 | - value = newState; | 117 | + _value = newState; |
118 | + _canUpdate = true; | ||
119 | + } | ||
120 | + if (_canUpdate) { | ||
121 | + updater(); | ||
116 | } | 122 | } |
117 | } | 123 | } |
118 | 124 |
@@ -5,6 +5,7 @@ import 'simple_builder.dart'; | @@ -5,6 +5,7 @@ import 'simple_builder.dart'; | ||
5 | class ListNotifier implements Listenable { | 5 | class ListNotifier implements Listenable { |
6 | List<VoidCallback> _listeners = <VoidCallback>[]; | 6 | List<VoidCallback> _listeners = <VoidCallback>[]; |
7 | 7 | ||
8 | + @protected | ||
8 | void updater() { | 9 | void updater() { |
9 | assert(_debugAssertNotDisposed()); | 10 | assert(_debugAssertNotDisposed()); |
10 | for (var element in _listeners) { | 11 | for (var element in _listeners) { |
-
Please register or login to post a comment