flutter - 错误:参数类型 'void Function()?' 不能分配给参数类型 'void Function(String?)?'
问题描述
错误很简单我不知道如何解决问题请帮忙
import 'package:flutter/material.dart';
class CheetahInput extends StatelessWidget {
final String? labelText;
final VoidCallback? onSaved;
CheetahInput({@required this.labelText, @required this.onSaved});
@override
Widget build(BuildContext context) {
return TextFormField(
decoration: InputDecoration(
fillColor: Colors.white,
filled: true,
labelText: labelText,
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(16),
),
floatingLabelBehavior: FloatingLabelBehavior.never,
),
initialValue: '',
validator: (String? value) {
return value!.isEmpty ? '$labelText is required' : null;
},
onSaved: onSaved,
);
}
}
我试图用尖括号指定类型,但它没有用感谢您的帮助。
解决方案
代替
final VoidCallback? onSaved;
和
final Function(String)? onSaved;
推荐阅读
- azure - 上传后 Azure 存储 zip 文件损坏(使用适用于 Java 的 Azure 存储 Blob 客户端库)
- javascript - 尝试删除待办事项列表但不工作
- hadoop - logstash 到 webhdfs 未能 APPEND_FILE /user/
- c# - 尝试编写测试时的 NSubstitute、DbContext 和一个奇怪的问题
- javascript - 从表单中的所有字段作为对象在 React 中提升状态
- reactjs - React - TypeError:无法读取未定义的属性“customId”
- azure - Azure 域损坏
- android - 在 Android 8 后接收传入的短信
- r - 我们如何检测和删除介于 NA 之间的变量并计算多个时间序列的 ACF?
- python - 比较单词并返回 Pandas DataFrame 条目