katana_scoped 1.5.0 copy "katana_scoped: ^1.5.0" to clipboard
katana_scoped: ^1.5.0 copied to clipboard

outdated

A state management package to allow for retention and management while specifying the scope of the state.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:katana_scoped/katana_scoped.dart';

void main() {
  runApp(const MyApp());
}

final appRef = AppRef();

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return AppScoped(
      appRef: appRef,
      child: MaterialApp(
        home: const CounterPage(),
        title: "Flutter Demo",
        theme: ThemeData(
          primarySwatch: Colors.blue,
        ),
      ),
    );
  }
}

class CounterPage extends PageScopedWidget {
  const CounterPage({super.key});

  @override
  Widget build(BuildContext context, PageRef ref) {
    final counter = ref.page.watch(() => ValueNotifier(0));

    return Scaffold(
      appBar: AppBar(title: const Text("App Demo")),
      body: Center(
        child: Text("${counter.value}"),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: () {
          counter.value++;
        },
        child: const Icon(Icons.add),
      ),
    );
  }
}
2
likes
0
points
3.98k
downloads

Publisher

verified publishermathru.net

Weekly Downloads

A state management package to allow for retention and management while specifying the scope of the state.

Homepage
Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter, katana

More

Packages that depend on katana_scoped