欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 焦点 > Select插件的用法

Select插件的用法

2025/9/26 6:57:39 来源:https://blog.csdn.net/talk_8/article/details/142568035  浏览:    关键词:Select插件的用法

文章目录

  • 1.知识回顾
  • 2.使用方法
    • 2.1 builder属性
    • 2.2 selector属性
    • 2.3 shouldRebuild属性
    • 2.4 child属性
  • 3 示例代码

我们在上一章回中介绍了组件之间共享数据相关的内容,本章回中将继续介绍该内容.闲话休提,让我们一起Talk Flutter吧。

在这里插入图片描述

1.知识回顾

我们在前面章回中介绍了全局共享数据相关的内容,当时介绍了获取共享数据的三种方法,本章回将介绍其中的一种方法:使用Selector获取共享数据。

2.使用方法

Selector是一个Widget,它提供了builder,selector,shouldRebuild和child四个属性,一方面它可以转换数据类型,另一方面它可以获取共享数据。我们可以
通过selector属性获取到共享数据类型的对象,然后就可以使用共享类型提供的getter方法获取对象中的共享数据,把共享数据转换后再返回给builder属性。我们重
点介绍Selector的builder属性,selector属性和shouldRebuild属性,前两个属性都是必选属性,也就是说我们必须给这些属性赋值。

2.1 builder属性

该属性是方法类型,方法中包含三个参数,方法返回Widget对象,该方法和Consumer中buidler属性对应的方法相似,不同的地方只方法中第二个参数的类型,该方法
中三个参数的详细功能如下:

  • context:主要用来创建Widget,为创建Widget提供上下文环境;
  • value:是泛型类型,它用来表示转换数据类型后的对象;
  • child:表示Selector组件的子组件,因此它代表的对象和Selector组件的child属性代表的对象相同;

2.2 selector属性

该属性是方法类型,方法中包含两个参数,方法返回转换后的数据类型,下面是该方法的函数原型和相关参数的详细介绍:S Function(BuildContext, A) selector,

  • BuildContext:主要用来创建Widget,为创建Widget提供上下文环境;
  • A:它是泛型类型,它用来表示共享数据对象,通过该对象的getter方法可以获取到共享数据,然后就可以转换数据类型;
  • S:它是泛型类型,它用来表示转换数据类型后的对象,它和builder属性中的第二个参数类型相同;

2.3 shouldRebuild属性

该属性是方法类型,方法中包含两个参数,方法返回true或者false.返回值表示是否更新组件以及组件中的共享数据。该属性是可选属性,默认返回false.下面是该方
法的函数原型和相关参数的详细介绍:bool Function(T previous, T next)

  • previous:它是泛型类型,它用来表示转换前数据类型的对象;
  • next:它是泛型类型,它用来表示转换后数据类型后的对象;
    注意:这两个属性的类型相同,表示把共享数据类型转换后的数据类型,也就是selecttor属性中的S。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词