如何解决为什么我收到错误,flutter statfulwidget flutter 中的常量值无效
在下面的代码中,widget.hintText 给出了错误,我试图将日期选择器作为单独的组件,并在从其他文件调用它时动态传递提示文本值。
import 'package:date_field/date_field.dart';
import 'package:Flutter/material.dart';
class DatePicker extends StatefulWidget {
final String hintText;
DatePicker({
this.hintText,Key key,}): super(key: key);
@override
_DatePickerState createState() => _DatePickerState();
}
class _DatePickerState extends State<DatePicker> {
@override
Widget build(BuildContext context) {
return DateTimeFormField(
decoration: const Inputdecoration(
hintText: widget.hintText,hintStyle: TextStyle(color: Colors.black54,fontSize: 16),errorStyle: TextStyle(color: Colors.redAccent),suffixIcon: Icon(Icons.event_note),),mode: DateTimeFieldPickerMode.date,autovalidateMode: AutovalidateMode.always,// validator: (e) => (e?.day ?? 0) == 1 ? 'Please not the first day' : null,onDateSelected: (DateTime value) {
},);
}
}
解决方法
您可以尝试从字符串中删除 final
关键字
错误来自在 const 对象 widget.hint
内使用变量 InputDecoration
我在 date_field 代码中找不到强制您使用常量 decoration
因此您可以删除 const
前面的 InputDecoration
关键字
有关 const
和 final
之间区别的详细信息,请参阅 this answer
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。