NyTextField是一个文本输入框组件,提供了表单校验,开发中添加假数据的功能。
验证
您可以通过提供 validationRules 参数来处理文本字段的验证,如以下示例所示。
TextEditingController _textEditingController = TextEditingController();
@override
Widget build(BuildContext context) {
return Scaffold(
body: SafeArea(
child: Container(
child: NyTextField(
controller: _textEditingController,
validationRules: "not_empty|postcode_uk"
),
),
),
);
}
可以将验证规则传递到参数中 validationRules 。在前面校验章节查看所有可用的验证规则。
验证错误消息
当文本字段验证失败时,将抛出错误信息。您可以通过设置 validationErrorMessage 参数来更新错误信息。您所需要做的就是传入您希望在出错时显示的信息。
TextEditingController _textEditingController = TextEditingController();
@override
Widget build(BuildContext context) {
return Scaffold(
body: SafeArea(
child: Container(
child: NyTextField(
controller: _textEditingController,
validationRules: "not_empty|postcode_uk",
validationErrorMessage: "Data is not valid"
),
),
),
);
}
假数据
在测试、开发应用程序时,您可能希望在文本字段中显示一些虚假数据,以加快开发速度。您可以设置 dummyData 参数,以便在应用程序的 .env 处于 "developing "时填充字段。
- 在
.env文件中,您已将APP_ENV设置为“developing” - 然后,使用带有
dummyData参数的NyTextField类来填充字段。
// 1 - .env
APP_NAME="Nylo"
APP_ENV="developing"
...
// 2 - 使用NyTextField的组件
TextEditingController _textEditingController = TextEditingController();
@override
Widget build(BuildContext context) {
return Scaffold(
body: SafeArea(
child: Container(
child: NyTextField(
controller: _textEditingController,
validationRules: "not_empty|postcode_uk",
dummyData: "B3 1JJ" // 显示的值
),
),
),
);
}
如果您需要动态设置虚拟数据,请尝试像 faker 这样的第三方包。