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