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

插件详情v1.0.1

should_rebuild

一个 widget 可以防止子 widget 的不必要的重建。您可以自定义重建条件。

AndroidiOSWebmacOSWindowsLinux
近 30 天下载
899
喜欢数
29
Pub 分数
140

安装插件

flutter pub add should_rebuild

插件介绍

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

should_rebuild 包通过允许小部件控制其子项何时重新构建来提升 Flutter 性能。它提供了一种定义自定义重建条件的方法,防止不必要的小部件树更新。在复杂的用户界面中,频繁的重建可能会影响性能,因此该功能尤为有用。通过使用基于条件的重建保护器包装子小部件,开发者可以优化渲染并减少计算开销。该包支持所有主要平台,并可无缝集成到现有的 Flutter 项目中。

适合场景

  • 通过频繁重建优化复杂UI
  • 减少列表中不必要的小部件更新
  • 改进有状态小部件的性能
  • 根据特定条件自定义重建逻辑
  • 在大型小部件树中最小化渲染成本

主要特点

  • 可自定义的重建条件
  • 防止不必要的子重建
  • 与现有小部件的简单集成
  • 跨平台支持
  • 轻量且高效

适合对象

  • 开发者优化应用性能
  • 管理大型 Flutter 代码库的团队
  • 动态或频繁更新的用户界面的应用程序
  • 寻求对小部件更新进行细粒度控制的构建者
  • 项目需要最少的样板代码来重建逻辑

使用建议

  • 需要仔细的条件逻辑以避免遗漏更新
  • 如果过度使用,可能会增加复杂性
  • 简单或静态小部件不需要
  • 最适合在性能关键部分使用
  • 需要理解 Flutter 的构建生命周期

原始 README

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

ShouldRebuild

Star this Repo pub package License GitHub issues GitHub forks

A widget can prevent Child Widget unnecessary rebuilds.You can filter whether you need rebuild based on whether the property values received by the old Child Widget and the new Child Widget are equal.

(这个widget可以防止它的child发生不必要的rebuilds,你可以判断新的Child Widget和旧的Child Widget接收的属性值是否相等来过滤是否需要rebuild)

Add dependency
dependencies:
  should_rebuild: 1.0.1

Or

dependencies:
  should_rebuild:
      git:
        url: https://github.com/fluttercandies/should_rebuild

Super simple to use

ShouldRebuild<Todo>(
    shouldRebuild: (oldWidget, newWidget) => oldWidget.counter != newWidget.counter,
    child: Todo(counter: counter,)
),

Todo Widget

class Todo extends StatelessWidget {
  final int counter;
  Todo({this.counter});
  @override
  Widget build(BuildContext context) {
    return Container(
      child: Text(counter.toString()),
    );
  }
}

The Todo widget only rebuilds if counter changes

ShouldRebuild Widget is a generic StatefulWidget,this generic represents the type of Widget returned by the builder method

所属分类

源码仓库

使用此插件的项目

暂无相关数据。