Flutter静态工具插件flutter_static_utility的使用

Flutter静态工具插件flutter_static_utility的使用

flutter_static_utility 是一个包含常用工具函数的 Flutter 插件。

功能列表

以下是 flutter_static_utility 提供的一些功能:

  • checkEmailRegex
  • checkPhoneNumberRegex (韩国)
  • checkNickNameRegex (韩国)
  • checkSMSCodeRegex
  • checkPasswordRegex
  • timeAgo
  • thousandToK
  • thousandToData

安装

pubspec.yaml 文件中添加依赖项:

dependencies:
  flutter_utils: ^<latest_version>

使用

checkEmailRegex

检查邮箱格式是否正确:

const result = checkEmailRegex(email: 'example@google.com');
/// 返回值为 true

checkPhoneNumberRegex

检查手机号码格式是否正确(仅适用于韩国号码):

const result = checkPhoneNumberRegex(phoneNumber: '01012341234');
/// 返回值为 true
/// 全球手机号码版本将更新

checkNickNameRegex

检查昵称格式是否正确:

const result = checkNickNameRegex(nickName: 'NickName', min: 2, max: 8);
/// 返回值为 true

checkSMSCodeRegex

检查短信验证码格式是否正确:

const result = checkSMSCodeRegex(code: '123456', length: 6);
/// 返回值为 true

checkPasswordRegex

检查密码格式是否正确:

const result = checkPasswordRegex(password: 'Abcd1234!', min: 8, max: 20);
/// 返回值为 true
/// 密码必须包含大写字母、小写字母、数字和特殊字符

timeAgo

获取时间差描述:

const result = timeAgo(dateTime: DateTime.now());
/// 返回 'Just now'
/// 或者 '3 seconds ago' ...
/// 或者 '2 weeks ago'

thousandToK

将数字转换为带 K 的格式:

const result = thousandToK(30000);
/// 返回 '30.0K'

thousandToData

将数字转换为 DigitData 对象:

const result = thousandToData(30000);
/// 返回 DigitData(suffix: 'K', data: 30.0, fraction: 1)

示例代码

以下是一个完整的示例代码,展示了如何在 Flutter 应用中使用 flutter_static_utility 插件:

import 'package:flutter/material.dart';
import 'package:flutter_static_utility/flutter_static_utility.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Example',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const ExamplePage(),
    );
  }
}

class ExamplePage extends StatelessWidget {
  const ExamplePage({Key? key}) : super(key: key);

  [@override](/user/override)
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Example'),
      ),
      body: Container(
        margin: const EdgeInsets.symmetric(horizontal: 16, vertical: 16),
        child: Center(
          child: Column(
            mainAxisSize: MainAxisSize.min,
            children: [
              const Text('3000', style: TextStyle(color: Colors.black)),
              Text(thousandToData(3000).data.toString(), style: const TextStyle(color: Colors.black)),
            ],
          ),
        ),
      ),
    );
  }
}

更多关于Flutter静态工具插件flutter_static_utility的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter静态工具插件flutter_static_utility的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


flutter_static_utility 是一个为 Flutter 开发者提供的静态工具插件,旨在简化常见的开发任务,提供一些实用的工具函数和扩展方法。通过使用这个插件,开发者可以更高效地编写代码,减少重复劳动。

安装插件

首先,你需要在 pubspec.yaml 文件中添加 flutter_static_utility 依赖:

dependencies:
  flutter:
    sdk: flutter
  flutter_static_utility: ^1.0.0  # 请使用最新版本

然后运行 flutter pub get 来安装依赖。

使用插件

flutter_static_utility 提供了多种静态工具函数和扩展方法,下面是一些常见的使用示例:

1. 字符串工具

import 'package:flutter_static_utility/flutter_static_utility.dart';

void main() {
  String str = "Hello, World!";
  
  // 判断字符串是否为空或空白
  print(str.isBlank); // false
  
  // 反转字符串
  print(str.reverse()); // !dlroW ,olleH
  
  // 将字符串转换为驼峰命名
  print(str.toCamelCase()); // helloWorld
}

2. 日期工具

import 'package:flutter_static_utility/flutter_static_utility.dart';

void main() {
  DateTime now = DateTime.now();
  
  // 格式化日期
  print(now.format("yyyy-MM-dd")); // 2023-10-05
  
  // 获取日期是星期几
  print(now.weekdayName); // Thursday
  
  // 判断日期是否是今天
  print(now.isToday); // true
}

3. 数字工具

import 'package:flutter_static_utility/flutter_static_utility.dart';

void main() {
  int num = 123456;
  
  // 格式化数字为带逗号的字符串
  print(num.formatWithCommas()); // 123,456
  
  // 将数字转换为罗马数字
  print(num.toRoman()); // C̅X̅X̅MMMCDLVI
  
  // 判断数字是否是偶数
  print(num.isEven); // true
}

4. 集合工具

import 'package:flutter_static_utility/flutter_static_utility.dart';

void main() {
  List<int> list = [1, 2, 3, 4, 5];
  
  // 随机打乱列表
  print(list.shuffled()); // [3, 1, 5, 2, 4]
  
  // 获取列表中的最大值
  print(list.max()); // 5
  
  // 获取列表中的最小值
  print(list.min()); // 1
}
回到顶部