rx_storage

Last updated:

0 purchases

rx_storage Image
rx_storage Images
Add to Cart

Description:

rx storage

rx_storage #
Reactive storage for Dart/Flutter. RxDart Storage for Dart/Flutter.
rx_shared_preferences is an extension of this package, check it out! #
Author: Petrus Nguyễn Thái Học #










Liked some of my work? Buy me a coffee (or more likely a beer).

More detail about returned Stream #


It's a single-subscription Stream (ie. it can only be listened once).


Stream will emit the value (nullable) or a TypeError as its first event when it is listen to.


It will automatically emit value when value associated with key was changed successfully
(emit null when value associated with key was removed or set to null).


When value read from Storage has a type other than expected type:

If value is null, the Stream will emit null (this occurred because null can be cast to any nullable type).
Otherwise, the Stream will emit a TypeError.



Can emit two consecutive data events that are equal. You should use Rx operator like distinct (More commonly known as distinctUntilChanged in other Rx implementations) to create an Stream where data events are skipped if they are equal to the previous data event.


Key changed: |----------K1---K2------K1----K1-----K2---------> time
|
Value stream: |-----@----@------------@-----@-----------------> time
| ^
| |
| Listen(key=K1)
|
| @: nullable value or TypeError
copied to clipboard
Usage #
A simple usage example:
import 'package:rx_storage/rx_storage.dart';

class StorageAdapter implements Storage<String, void> { ... }

main() async {
final adapter = StorageAdapter();
final rxStorage = RxStorage<String, void>(adapter);

rxStorage.observe('key', (v) => v as String?).listen((String? s) { ... });
await rxStorage.write('key', 'a String', (v) => v);
await rxStorage.read('key', (v) => v as String?);
}
copied to clipboard
Features and bugs #
Please file feature requests and bugs at the issue tracker.

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.