누군가 Provider 패키지 사용과 ValueNofifier 사용의 차이점을 설명 할 수 있습니까 ?
지금 은 내 앱에서 ValueNotifier 와 ValueListenableBuilder 를 사용하고 있는데 이것과 공급자와 소비자를 사용하는 것 사이에 많은 유사점이 있습니다. 둘 다 제공된 최신 데이터로 위젯을 다시 빌드하는 리스너가 있으며 둘 다 ChangeNotifier 및 notifyListeners를 사용합니다.
그렇다면 차이점은 무엇이며 언제 다른 것 대신 하나를 선택해야합니까?
감사
내 경험이 앱에서 두 가지를 모두 사용하는 것에 관한 한, 주요 차이점은
Provider
를 사용하는 모든 위치와 같이 앱의 모든 부분에서 변경 사항을 제공notifyListener()
할 수 있으며 앱의 어느 곳에서나 액세스 할 수 있습니다. 그러나 권장되지 않는 globalValueNotifier
을 사용하면 버그가 발생할 가능성이 있습니다. 기술적으로는 코드가 커질 때 버그 추적을 제어 할 수 없습니다.
Provider(
create: (_) => MyModel(),
child: ...
)
기타 주요 차이점 :
Provider
당신의 메이크업 사용의 전원을 제공합니다 여러 공급자 와의 만, 그러나 하나의 제공자 배열에 저장할 수 있습니다ValueNotifier
당신은 버전 많은 한 번에 하나 개의 값을 사용하도록 제한됩니다. 여러 ValueNotifier를 사용하려면 여러 ValueNotifier를 생성 한 다음 매번 폐기해야합니다.
MultiProvider(
providers: [
Provider<Something>(create: (_) => Something()),
Provider<SomethingElse>(create: (_) => SomethingElse()),
Provider<AnotherThing>(create: (_) => AnotherThing()),
],
child: someWidget,
)
기본적으로 비즈니스 로직을 일반 앱 로직과 분리하여 유지하는 깔끔한 방법입니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다