easy_dispose_provider

Creator: coderz1093

Last updated:

0 purchases

easy_dispose_provider Image
easy_dispose_provider Images
Add to Cart

Description:

easy dispose provider

Add disposable feature to provider classes.
Read easy_dispose documentation for details.
You can find all available extensions in easy_dispose repository.
Supported features #

DisposableProvider
DisposableProxyProvider

Example #
import 'dart:async';

import 'package:easy_dispose/easy_dispose.dart';
import 'package:easy_dispose_provider/easy_dispose_provider.dart';
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:provider/provider.dart';

// ignore_for_file: no-empty-block, avoid_print
Future main() async {
runApp(
MaterialApp(
home: DisposableProvider<_ParentDisposable>(
create: (_) => _ParentDisposable(),
child: DisposableProxyProvider<_ParentDisposable, _ChildDisposable>(
update: (_, parentDisposable, __) => _ChildDisposable(
parentDisposable,
),
child: const _HomeWidget(),
),
),
),
);
}

class _HomeWidget extends StatelessWidget {
const _HomeWidget({Key? key}) : super(key: key);

@override
Widget build(BuildContext context) {
final parentDisposable = Provider.of<_ParentDisposable>(context);
final childDisposable = Provider.of<_ChildDisposable>(context);
return Scaffold(
body: Text(
'Hello world \n${'$parentDisposable \n\n'}${'$childDisposable \n\n'}',
),
);
}
}

class _ParentDisposable extends CustomDisposable {
_ParentDisposable()
: super(
() => print(
'_ParentDisposable',
),
);
}

class _ChildDisposable extends CustomDisposable {
final _ParentDisposable parentDisposable;

_ChildDisposable(this.parentDisposable)
: super(
() => print(
'_ChildDisposable',
),
);
}

copied to clipboard

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.