当前位置: 首页 > news >正文

做网站怎么制作wordpress智能表单

做网站怎么制作,wordpress智能表单,网站开发前台代码和后台代码,有没有专业做盐的网站文章目录 前言一、什么是dispose探测控件#xff1f;1、通常情况2、使用dispose探测控件 二、如何实现1、继承StatefulWidget2、定义dipose回调3、定义child4、重载Dispose方法5、build child 三、完整代码四、使用示例1、基本用法2、设置定义数据 总结 前言 开发flutter一般… 文章目录 前言一、什么是dispose探测控件1、通常情况2、使用dispose探测控件 二、如何实现1、继承StatefulWidget2、定义dipose回调3、定义child4、重载Dispose方法5、build child 三、完整代码四、使用示例1、基本用法2、设置定义数据 总结 前言 开发flutter一般会用状态管理工具用了状态管理后大部分控件都会是StatelessWidgetStatefulWidget有dispose重载获取控件销毁时机但StatelessWidget则没有此时我们要获取控件销毁的时机就需要另寻他法了。 一、什么是dispose探测控件 这是一个控件用于帮助探测无状态控件的销毁时机有点类似visibility_detector用于探测控件的显示和隐藏。 1、通常情况 通常情况下想要知道一个页面是否销毁或切换了需要通过StatefulWidget的dispose方法获取。代码如下 class Page extends StatefulWidget {const Page({super.key,});override_Page createState() _Page(); }class _PageT extends Widget, S extends StatePage {overridevoid dispose() {super.dispose();//此处获取到dispose时机}overridevoid didUpdateWidget(covariant Page oldWidget) {super.didUpdateWidget(oldWidget);//此处获取到控价刷新时机}overrideWidget build(BuildContext context) {return const SizedBox();} }2、使用dispose探测控件 在使用使用状态管理的情况下通常都是StatelessWidget页面将其改成StatefulWidget分成两个类显然是麻烦的。如果有了DisposeDetectordispose探测控件作为一个控件放入StatelessWidget页面中就可以直接获取到dispose时机了。 class Page2 extends StatelessWidget {const Page2({super.key,});overrideWidget build(BuildContext context) {return DisposeDetector(child: const SizedBox(),onDispose: () {//此处获取到dispose时机},onDidUpdateWidget: (DisposeDetectorSizedBox, dynamic oldWidget) {//此处获取到控价刷新时机},);} }二、如何实现 1、继承StatefulWidget 2、定义dipose回调 3、定义child 4、重载Dispose方法 5、build child 三、完整代码 dispose_detector.dart import package:flutter/material.dart;/// 创建人 xin /// 创建时间: 2023/6/15 13:44 /// 注释 销毁探测控件 class DisposeDetectorT extends Widget, S extends StatefulWidget {final Function onDispose;final Function(DisposeDetectorT, S oldWidget) onDidUpdateWidget;final T child;final S? tag; //自定义数据const DisposeDetector({super.key, required this.child,required this.onDispose,required this.onDidUpdateWidget,this.tag,});override_DisposeDetectorT, S createState() _DisposeDetectorT, S(); }class _DisposeDetectorT extends Widget, S extends StateDisposeDetectorT, Swith TickerProviderStateMixin {overridevoid dispose() {super.dispose();widget.onDispose();}overridevoid didUpdateWidget(covariant DisposeDetectorT, S oldWidget) {super.didUpdateWidget(oldWidget);widget.onDidUpdateWidget(oldWidget);}overrideWidget build(BuildContext context) {return widget.child;} }四、使用示例 1、基本用法 class Page2 extends StatelessWidget {const Page2({super.key,});overrideWidget build(BuildContext context) {return DisposeDetector(child: const SizedBox(),onDispose: () {//此处获取到dispose时机},onDidUpdateWidget: (DisposeDetectorSizedBox, dynamic oldWidget) {//此处获取到控价刷新时机},);} }2、设置定义数据 class Page2Controller {void dispose() {//销毁逻辑} }class Page2 extends StatelessWidget {final _ctrl Page2Controller();Page2({super.key,});overrideWidget build(BuildContext context) {return DisposeDetector(tag: _ctrl, //自定义数据记录当前的controlleronDispose: () {//此处获取到dispose时机_ctrl.dispose();},onDidUpdateWidget:(DisposeDetectorSizedBox, Page2Controller oldWidget) {//此处获取到控价刷新时机if (oldWidget.tag ! _ctrl)//如果刷新控件时controller改变了则销毁旧controller{oldWidget.tag!.dispose();}},child: const SizedBox(),);} }总结 以上就是今天要讲的内容本文提供的控件是比较有用的尤其是业务逻辑有数据释放的需求比如播放器之类的控件销毁后需要结束播放将播放资源销毁如果是用StatelessWidget则没办法实现用StatefulWidget又会使得页面实现变得麻烦或者复杂最好的方法则是使用本文提供的dispose探测控件。
http://www.dnsts.com.cn/news/32625.html

相关文章:

  • 企业网站用vps还是虚拟主机wordpress php调用短代码
  • 商城网站开发代码案例音乐网站需求分析
  • 滑县网站建设公司确认已有81人感染
  • 房地产销售提成湖南有实力的关键词优化
  • 最经济 网站建设app开发企业在选择上一般优先开发
  • 网站建设扬州南宁模板建站哪家好
  • 网站dns多久刷新风铃上做的网站发布时号码填写
  • 惠州市建设局网站办事指南seo关键词排名优化费用
  • 建设银行快审额度查询网站制作小程序源码
  • 湖南省建设工程网站招商网站平台
  • 杜桥做网站哪家好长沙智能建站模板
  • 建设网站的要求网站网页的区别与联系
  • 承德微网站建设飞色网站商城怎么做
  • 哈尔滨门户网站制作哪家好刷赞网站推广qq免费
  • 兼职做设计的网站怎么搭建自己的网站后台
  • 佛山网站建设及优化公司网站建设咨询话术
  • 作品展示网站 源码产品如何做网络推广
  • 免费简单门户网站开发郑州网站优化费用
  • 网站做302重定向网站开发招聘需要
  • 网站营销方案设计公司北京公司注册中介正规
  • 做网站带来好处给人做ppt的网站
  • 同城信息商家的网站开发网站打开是404错误代码
  • 建设门户网站都需要什么意思建设网站能赚钱
  • e盒印网站开发寒亭营销型网站建设
  • 重庆市交通建设工会网站四川网站建设开发
  • 网站开发完要怎么部署网站哪里有
  • 网站建设需要用到的技术标书制作收费
  • 创可贴网页设计网站网站设计风格化
  • 怎么利用个人网站营销型网站建设遨龙
  • 郑州专业网站制作建设杭州网站建设开发