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

住建部网站资质查询中宏建设集团网站建设用什么开源程序好

住建部网站资质查询中宏建设集团,网站建设用什么开源程序好,旅游网站建设背景,中国建设官网登录入口小事情决定了你的熟练程度#xff0c;这些小细节的有趣之处在于它们的丰富性。您将在代码库中的数百个位置遇到 onTap 事件。增强它们可以对代码的可维护性和最终用户体验产生重大的积极影响。 onTap 就是这样一个微小但丰富的东西——我们在每个屏幕上都使用它。这纯粹是关于… 小事情决定了你的熟练程度这些小细节的有趣之处在于它们的丰富性。您将在代码库中的数百个位置遇到 onTap 事件。增强它们可以对代码的可维护性和最终用户体验产生重大的积极影响。 onTap 就是这样一个微小但丰富的东西——我们在每个屏幕上都使用它。这纯粹是关于那些 onTap 事件该做和不该做。 规则 1小部件不应实现 onTap 逻辑 顾名思义小部件是在屏幕上绘制的一块 UI它应该对业务逻辑一无所知。如果需要它可以将事件传递给其父级。做到这一点的最佳方法是使用函数作为构造函数参数。 要点不要在小部件内创建匿名函数来编写业务逻辑。相反甚至可以将 onTap 传递到小部件之外并让父级处理它。 // DONTclass MyWidget extends StatelessWidget {overrideWidget build(BuildContext context) GestureDetector(onTap: () {debugPrint(MyWidget onTap called);fetchFromServer();},child: Container(width: 100,height: 100,color: Colors.orange,),); }// DOclass MyWidget extends StatelessWidget {const MyWidget({this.onTap});final void Function()? onTap;overrideWidget build(BuildContext context) GestureDetector(onTap: onTap,child: Container(width: 100,height: 100,color: Colors.orange,),); }规则 2onTap 函数应该可为 null 作为 UI 的一部分小部件应该是可重用的。不同的用例可能需要也可能不需要其 onTap 功能。因为它存在的主要原因是在屏幕上绘制而不是向其父级或控制器发送事件所以它应该能够在有或没有 onTap 事件的情况下存在。 要点使来自小部件的所有事件函数都可以为 null。 // DONTclass MyWidget extends StatelessWidget {const MyWidget({required this.onTap});final void Function() onTap;overrideWidget build(BuildContext context) GestureDetector(onTap: onTap,child: Container(...),); }// DOclass MyWidget extends StatelessWidget {const MyWidget({this.onTap});final void Function()? onTap;overrideWidget build(BuildContext context) GestureDetector(onTap: onTap,child: Container(...),); }规则 3UI 必须对逻辑一无所知即使是指示性意义上的也不行 即使在使用最佳实践之后一个常见的错误是命名指示业务逻辑的 UI 事件函数。银行应用程序中的小部件应该不知道它属于银行应用程序并且只有足够的数据来绘制它自己和它的孩子。换句话说一个小部件应该是美丽而愚蠢的。 要点命名 UI 事件函数以指示事件而不是指示底层业务逻辑。将这样的函数命名为 onTapRegisterButton() 比 register() 更好。 // DONTclass MyScreen extends StatelessWidget {...overrideWidget build(BuildContext context) Scaffold(body: MyWidget(onTap: controller.fetchData,);); }// DOclass MyScreen extends StatelessWidget {...overrideWidget build(BuildContext context) Scaffold(body: MyWidget(onTap: controller.onTapMyWidget,);); }class MyScreenController {...void onTapMyWidget() {_fetchData()}void _fetchData() {...}}规则 4尽可能传递模型 这一点不仅限于 UI也适用于所有函数。每当您需要传递一些数据作为参数时请尽量传递整个模型而不仅仅是一个 ID 或名称。这是一个很好的做法可以在将来业务逻辑扩展或更改时尽量减少代码更改。 要点将模型作为参数而不是 ID 传递给函数。 // DONTvoid onTapMyWidget(int subjectId) {... }// DOvoid onTapMyWidget(Subject subject) {... }规则 5始终指定 HitTestBehavior 使用 GestureDetector 进行点击时不要忘记将 behavior 添加到您的小部件中。此属性指定点击点击如何传播到子窗口小部件。在大多数情况下您将使用 HitTestBehavior.opaque 但我建议您应该查看 flutter.dev 上的简短描述以了解情况。 要点通过指定小部件的点击行为来绝对控制小部件的子部件。 class MyWidget extends StatelessWidget {...overrideWidget build(BuildContext context) GestureDetector(onTap: onTap,behavior: HitTestBehavior.opaque,child: Container(...),); }原文https://chtgupta.medium.com/beyond-the-basics-5-rules-for-ontap-events-in-flutter-to-outshine-others-e5ab0fa8622
http://www.w-s-a.com/news/633110/

相关文章:

  • 衡阳市城乡建设协会官方网站免费游戏网站模板
  • 小程序怎么做优惠券网站合肥建站网站平台
  • 民制作网站价格株洲企业seo优化
  • 网站建设 岗位职责网站建设百度索引
  • 网站建设的内容下拉网站导航用ps怎么做
  • 怎样做p2p网站海口免费自助建站模板
  • 给企业建设网站的流程图wordpress 添加子菜单
  • 企业网站带新闻发布功能的建站皋兰县建设局网站
  • 国内外做gif的网站wordpress数据库教程
  • 成都建站平台自己做一个网站需要多少钱
  • 景区旅游网站平台建设公司企业网站源码
  • 免费高清网站推荐喂来苏州网络科技有限公司
  • php做的大型网站有哪些备案博客域名做视频网站会怎么样
  • 去哪网站备案吗昭通网站建设
  • flash企业网站源码建筑材料采购网站
  • 网站可以换虚拟主机吗部门做网站优点
  • 如何做分类网站信息营销莱芜网页定制
  • 班级网站建设感想中国做视频网站有哪些
  • 做刷票的网站wordpress图片链接插件
  • 给客户做网站图片侵权沈阳做网站的地方
  • 网站开发步骤规划蓝天云免费空间主机
  • 网站字体规范wordpress找不到页面内容编辑
  • 静态网站建设参考文献茂名营销型网站制作公司
  • 君山区建设局网站风铃微网站怎么做
  • 购物网站销售管理合肥网络推广平台
  • 网站建设规划书txt微盘注册帐号
  • 小说网站开发实训报告企业网盘收费标准
  • mvc网站开发医疗医院网站建设
  • 天津市建设厅官方网站wordpress设置404
  • 贵阳好的网站建设免费正能量网站下载ww