Text("开始 date: ${_selectedDateRange?.start.toString().split(' ')[0]}!==null "按下按钮显示选择器")
我收到一条错误消息,指出字符串为空。我是 flutter 的新手,如果 _selectedDateRange?.start 为空,它应该给数据按下按钮以显示选择器,否则保持相同的数据......我坚持下去。请帮我
回答1
您可以在函数中设置它以获得更高的可读性或获取器,即
String _displayText() {
if (_selectedDateRange?.start != null) {
return 'Start date: ${_selectedDateRange?.start.toString().split(' ')[0]}';
} else {
return 'Press the button to show the picker';
}
}
或者
String get _displayText {
if (_selectedDateRange?.start != null) {
return 'Start date: ${_selectedDateRange?.start.toString().split(' ')[0]}';
} else {
return 'Press the button to show the picker';
}
}
并将其传递给您的文本小部件
Text(_displayText()) // function
Text(_displayText) // getter
用于重用函数
String _displayText(String begin,DateTime? date) {
if (date != null) {
return '$begin date: ${date.toString().split(' ')[0]}';
} else {
return 'Press the button to show the picker';
}
}
像这样使用它
Text(_displayText('end',_selectedDateRange?.end)) // function