flocse 2.3.0
flocse: ^2.3.0 copied to clipboard
An attempt at component/event based programming with flutter
import 'package:example/src/app.dart';
import 'package:flocse/flocse.dart';
import 'package:flutter/material.dart';
void main(List<String> args) {
runApp(AccountApp());
}
class CounterViewModel extends ComponentViewModel {
int _value;
CounterViewModel(int value) : _value = value;
int get value => _value;
@override
Future<void> initListeners() async {
registerEvent(_onCounterUpdate);
}
void _onCounterUpdate(CounterUpdateEvent event) {
_value = event.value;
}
void increment() {
send(IncrementEvent(1));
}
void decrement() {
send(DecrementEvent(1));
}
@override
void onLoad() {}
@override
void onUnload() {}
}
class IncrementEvent extends Event {
int value;
IncrementEvent(this.value);
}
class DecrementEvent extends Event {
int value;
DecrementEvent(this.value);
}
class CounterUpdateEvent extends Event {
int value;
CounterUpdateEvent(this.value);
}
class SetCounterEvent extends Event {
int value;
SetCounterEvent(this.value);
}