express_validator 0.0.1 copy "express_validator: ^0.0.1" to clipboard
express_validator: ^0.0.1 copied to clipboard

discontinued

flutter 数据校验工具, 适用于表单提交时候的数据校验

example/lib/main.dart

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

void main() => runApp(MyApp());

final Map<String, List<Schema>> descriptor = {
  'name': [
    Schema(
      type: SchemaType.required,
      message: '名称不能为空',
    ),
  ],
  'age': [
    Schema(
      type: SchemaType.required,
      message: '年龄不能为空',
    ),
    Schema(
      validator: (key, value, callback) {
        callback(value < 18 ? '未成年不能通过' : null);
      }
    )
  ],
  'sex': [
    Schema(
      type: SchemaType.required,
      message: '性别不能为空',
    ),
  ],
  'phone': [
    Schema(
      type: SchemaType.required,
      message: '手机号不能为空',
    ),
    Schema(
      type: SchemaType.phone,
      message: '手机号格式错误',
    ),
  ],
};

final validator = Validator(descriptor);
final data = {
  'name': '123',
  'age': 13,
  'sex': '男',
  'phone': '15818440278',
};

class MyApp extends StatelessWidget {
  MyApp() {
    validator.validate(
      data,
      fail: (message, key) {
        print('$key: $message');
      },
      success: () {
        print('校验成功');
      }
    );
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'validator',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: Scaffold(
        appBar: AppBar(
          title: Text('validator'),
        ),
        body: Center(
          child: MaterialButton(
            color: Colors.black,
            textColor: Colors.white,
            onPressed: () {
            },
            child: Text('验证'),
          ),
        ),
      ),
    );
  }
}
0
likes
15
pub points
0%
popularity

Publisher

unverified uploader

flutter 数据校验工具, 适用于表单提交时候的数据校验

Repository (GitHub)
View/report issues

License

unknown (LICENSE)

Dependencies

flutter

More

Packages that depend on express_validator