写点什么

Flutter 开发小技巧【Flutter 专题 23】

作者:坚果前端
  • 2021 年 12 月 21 日
  • 本文字数:775 字

    阅读完需:约 3 分钟

Flutter开发小技巧【Flutter专题23】

大家好,我是坚果,目前是华为云享专家,51CTO 博客首席体验官,专注于大前端技术的分享,包括 Flutter,小程序,安卓,VUE,JavaScript。公众号有更多细节。


使用async/`await

异步代码难以阅读和调试。该async/await语法提高了可读性。


将小部件拆分为子小部件。

setState()在状态上调用时,所有后代小部件都将重建。因此,将小部件拆分为小部件,以便setState()调用实际需要更改 UI 的子树部分。


使用 ListView.builder 获取长列表

在处理无限列表或非常大的列表时,通常建议使用ListView构建器以提高性能。

默认ListView构造函数一次构建整个列表。ListView.builder创建一个惰性列表,当用户向下滚动列表时,Flutter 会按需构建小部件。

在小部件中使用 Const

当 setState 调用时小部件不会改变,我们应该将其定义为常量。它将阻止小部件重建,从而提高性能。


避免使用as,使用is运算符

通常,as如果无法进行强制转换,则 cast 运算符会抛出异常。为了避免抛出异常,可以使用is.

使用if条件代替条件表达式

很多时候我们需要根据 Row 和 Column 中的一些条件来渲染一个 widget。如果条件表达式在任何情况下都返回 null,那么我们应该只使用 if 条件。

对文件使用相对路径导入 lib

当同时使用相对导入和绝对导入时,当从两种不同的方式导入同一个类时,可能会造成混淆。为了避免这种情况,我们应该在lib/文件夹中使用相对路径。

指定类成员的类型

当成员的值类型已知时,总是明确指定成员的类型。var尽可能避免使用。

避免print()

print()debugPrint()两个用于在控制台登录。如果您使用print()并且一次输出太多,那么 Android 有时会丢弃一些日志行。为避免这种情况,请使用debugPrint().如果您记录的数据有太多数据,则使用dart:developer log().这允许您在日志输出中包含更细的粒度和信息。

我希望这能给你一些见解,使你的 Flutter 代码更具可读性,同时也提高你的应用程序的性能。快乐编码!

发布于: 20 小时前阅读数: 8
用户头像

坚果前端

关注

此间若无火炬,我便是唯一的光 2020.10.25 加入

公众号:“坚果前端”,华为云享专家,51CTO博客首席体验官,专注于大前端技术的分享,包括Flutter,小程序,安卓,VUE,JavaScript。

评论

发布
暂无评论
Flutter开发小技巧【Flutter专题23】