Flutter 项目中管理你的 Assets Texts Widgets
创始人
2024-02-06 22:46:48
0

Flutter 项目中管理你的 Assets Texts Widgets

alt

原文 https://medium.com/@mustafatahirhussein/managing-your-assets-texts-and-widgets-professionally-a-must-read-flutter-guide-ffb93b19eff0

前言

这篇文章是 Mustafa Tahir 写的关于 Flutter 项目管理的技巧,可以看得出也确实是开发中出现的业务需求,让我们开始吧。

正文

Assets 资源管理

无论应用程序是小型的、中型的还是企业级的,确保它包含相关的 Assets 都是一项方便的任务。因此,我们需要处理它的方式,如果它得到转移到其他开发人员,他/她也可以轻松地管理它。

这应该是 Assets 结构

assets/
 logo/
 avatars/
 components/
 icons/

注意: 它可能因项目而异,但是需要根据结构进行分离。

我们要怎么利用它?

  • 错误方式
dart file "a.dart"
Image.asset("assets/icons/a.png"),
dart file "b.dart"
Image.asset("assets/icons/a.png"),
  • 正确方式
dart file "image_assets.dart"
class ImageAssets {
 static const String fb = "assets/icons/fb.png";
 static const String ig = "assets/icons/ig.png";
}
dart file "a.dart"
Image.asset(ImageAssets.fb),
dart file "b.dart"
Image.asset(ImageAssets.ig),

你看,这有多简单,代码也干净多了。

现在,让我们对 「Texts」 也这样做。

管理文字 Texts

让我们加快一点速度,“不要再草草记下整个段落”。

如果我们的项目具有本地化功能,那么就必须专业地使用文本,否则它将成为大多数开发人员的头痛。

dart file "a.dart"
Text("some text"),
dart file "b.dart"
Text("some text"),
dart file "c.dart"
Text("some text"),
  • 正确的方法。
dart file "image_assets.dart"
class Strings {
 static const String appTitle = "e-comm App";
 static const String appDesc = "Lorem Ipsum";
}
dart file "a.dart"
Text(Strings.Strings),
dart file "b.dart"
Text(Strings.appDesc),

就这么简单。

现在,让我们用更多的方法来管理我们的 Widgets。

管理 Widgets

在这里,我要向大家介绍派对的“ extension ”。

这是 Dart 2.7 版本中引入的一个特性。它的基础是相当牢固的,因为它使代码更容易阅读,甚至对新生也是如此。

下面是 extension 的代码片段

extension "name_of_extension" on "type" {
 "return_type" get => "the_type_you_want";

别担心,我通过一个例子让你明白。

这样吧

考虑到我们需要从 Flutter 内置的 DateTime 中挑选出“日期和年份”,我们将如何做到这一点。

  • 第一种方法

我们可以使用包“ date_format”或“ intl”来完成工作。

  • 第二种方法

我们可以通过在需要特性的页面上指定字符串拼接来处理它。

但是通过 extension ,我们可以在不影响代码质量的情况下轻松地处理它。

create a file project_extensions.dart
extension ExtendedDate on DateTime {
  String get formatted => "$day-$year";
}

现在,用这个:

Text(DateTime.now().formatted),

注意: 只要有日期时间,您将默认看到“格式化”。

这就是我们如何使我们的 widget 具有更好的可读性。

另外,如果我们有多个类型,比如“ . png”和“ . svg”,我们也可以使用 extension 名,特别是对于 Asset。

结束语

如果本文对你有帮助,请转发让更多的朋友阅读。

也许这个操作只要你 3 秒钟,对我来说是一个激励,感谢。

祝你有一个美好的一天~


© 猫哥

  • 微信 ducafecat

  • https://wiki.ducafecat.tech

  • https://video.ducafecat.tech

本文由 mdnice 多平台发布

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
客厅放八骏马摆件可以吗(家里摆... 今天给各位分享客厅放八骏马摆件可以吗的知识,其中也会对家里摆八骏马摆件好吗进行解释,如果能碰巧解决你...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...