Introduction
A simple, type-safe package for declaring static variables that may have zone-scoped values. These are similar to ThreadLocal values in programming languages such as Java.
See explanation of zones at dartlang.org.
Getting Started
1.Add dependency
In pubspec.yaml
:
dependencies:
zone_local: ^0.2.0-nullsafety.0
2.Usage
import 'package:zone_local/zone_local.dart';
final ZoneLocal<String> greeting = new ZoneLocal<String>(
defaultValue: 'Hello!',
);
void main() {
// This zone sees the default value.
print(greeting.value); // Hello!
// Fork a zone that will see a different value when the zoneLocal is accessed.
final zone = greeting.forkZoneWithValue('Hi!');
zone.run(() {
print(greeting.value); // Hi!
});
}