Dart:三十、扩展 extension

扩展 extension

extension 本质上还是和继承一样扩展了方法。

但这是一种简洁优雅的方式,你可以想想之前继承的繁琐。

示例 扩展日期时间

  • 加入依赖包 pubspec.yaml
dependencies:
  intl: ^0.17.0
  • 编写扩展类 ExDateTime
import 'package:intl/intl.dart';

extension ExDateTime on DateTime {
  /// 方法,格式化日期 yyyy-MM-dd
  String toDateString({String format = 'yyyy-MM-dd'}) =>
      DateFormat(format).format(this);

  // 属性
  int get nowTicket => this.microsecondsSinceEpoch;
}

main() {
  var now = DateTime.now();

  print(now.toDateString());
  print(now.nowTicket);
}

我们给可以扩展类加个前缀 Ex 这样一看就知道是扩展

业务场景

  • 功能函数

[图片上传失败...(image-2348df-1748504145977)]

  • 视图组件

[图片上传失败...(image-66b46c-1748504145977)]

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容