私はFlutterのウェブサイトで次のコードを見ています。
void main() {
runApp(
MultiProvider(
providers: [
ChangeNotifierProvider(create: (context) => CartModel()),
Provider(create: (context) => SomeOtherClass()),
],
child: MyApp(),
),
);
}
_
私は疑問に思っています、プロバイダーとChangenetifierProviderの違いは何ですか?
ありがとう!
プロバイダのパッケージのドキュメント から(すべての方法):
プロバイダ:プロバイダの最も基本的な形式。値が何であれ、値をかけて公開します。
ListenableProvider:聴取可能オブジェクトの特定のプロバイダ。 ListenableProviderはオブジェクトを聴き、リスナーが呼び出されるたびに再構築するウィジェットに依存します。
ChangenoTifierProvider ChangenoTifierのためのlistentableProviderの指定。必要に応じてchangenotifier.disposeを自動的に呼び出します。
そのため、ChangeNotifierProvider
は特定のタイプのProvider
がオブジェクトを聴き、このオブジェクトが更新されたときにその依存ウィジェットを再構築します。また、必要に応じてdispose
メソッドを自動的に呼び出します。
Provider
は、これ以上複雑な機能なしで、これ以上複雑な機能なしで、最適化された 継承されたウィジェット のようなものです。