搜索插件、代码仓与 APP 分类

插件详情v0.0.2

multi_value_listenable_builder

一个 Flutter 包,允许使用单个 widget 监听多个 ValueListenables。

AndroidiOSWebmacOSWindowsLinux
近 30 天下载
4800
喜欢数
34
Pub 分数
160

安装插件

flutter pub add multi_value_listenable_builder

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

一个 Flutter 包,通过单个 widget 实现对多个 ValueListenables 的监听,简化复杂 UI 中的状态管理。它通过允许开发者将多个 ValueListenables 合并为一个监听器,减少了样板代码,当任一监听值发生变化时触发重建。适用于多个数据源影响单个 widget 外观或行为的场景。该包轻量且与现有的 Flutter 状态管理模式无缝集成。

适合场景

  • 监听多个表单字段
  • 根据多个状态变量更新UI
  • 同步多个数据流的UI
  • 管理复杂表单验证
  • 减少UI树中的嵌套监听器

主要特点

  • 用于多个 ValueListenables 的单一 Widget
  • 任何值更改时自动重建
  • 最小化样板代码
  • 可与其他部件组合使用
  • 轻量且高效

适合对象

  • 复杂表单
  • 具有多个依赖项的状态组件
  • 需要同步更新的UI
  • 使用 ValueNotifier 的开发者
  • 项目避免使用重型状态管理框架

使用建议

  • 需要理解 ValueListenable
  • 如果过度使用,可能会增加复杂性
  • 不适合非常大的状态图
  • 最好与简单或中等状态组合一起使用
  • 仅限 ValueListenable 类型

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

MultiValueListenableBuilder

A widget to listen to multiple ValueListenables in Flutter.

pub

Usage

  • Add the multi_value_listenable_builder as a dependency in your project.

  • Import package:multi_value_listenable_builder/multi_value_listenable_builder.dart in required files.

  • Use MultiValueListenableBuilder just like any other widget.

import 'package:multi_value_listenable_builder/multi_value_listenable_builder.dart';

MultiValueListenableBuilder(
    // Add all ValueListenables here.
    valueListenables: [
        listenable0,
        listenable1,
        listenable2,
        .
        .
        listenableN
    ],
    builder: (context, values, child) {
        // Get the updated value of each listenable
        // in values list.
        return YourWidget(
            values.elementAt(0),
            values.elementAt(1),
            values.elementAt(2),
            .
            .
            values.elementAt(N),
            child: child // Optional child.
        );
    },
    child: YourOptionalChildWidget(),
)

A detailed and working example can be found here.

所属分类

源码仓库

使用此插件的项目