json - 必须将非空字符串提供给 Text 小部件错误到条件 alertdialogue 标题
问题描述
这是我的代码
Future<Map<String, dynamic>> userRegistration() async{
// Showing CircularProgressIndicator.
setState(() {
visible = true ;
});
// Getting value from Controller
String fname = firstNameController.text;
String lname = lastNameController.text;
String email = emailController.text;
String phoneNumber = phoneNumberController.text;
String password = passwordController.text;
// SERVER API URL
var url = 'https://url_to_api';
// Store all data with Param Name.
var data = {'firstname': fname, 'lastname': lname, 'phone': phoneNumber, 'email': email, 'password' : password};
// Starting Web API Call.
var response = await http.post(url, body: data);
// Getting Server response into variable.
var message = jsonDecode(response.body);
var prompt;
message == message['success'] ? prompt = message['success'] : prompt = message['error'];
// If Web call Success then hide the CircularProgressIndicator.
if(response.contentLength > 0){
setState(() {
visible = false;
});
}
// Showing Alert Dialog with Response JSON Message.
showDialog(
context: context,
builder: (BuildContext context) {
return AlertDialog(
title: Text(prompt),
actions: <Widget>[
FlatButton(
child: Text("OK"),
onPressed: () {
Navigator.push(context, PageTransition(type: PageTransitionType.leftToRight, child: LoginPage()));
},
),
],
);
},
);
}
我的 json 响应是 ["success"=>"请检查您的电子邮件以获取验证码"] 或 ["error"=>"用户已存在或帐户未验证,请检查您的电子邮件"]。但是如果我像这样构建我的三元操作,则警报对话框仅适用于错误
message == message['success'] ? prompt = message['success'] : prompt = message['error'];
如果我这样写,或者为了成功
message == message['error'] ? prompt = message['error'] : prompt = message['success'];
当它不起作用时,它会抛出此错误:
必须向 Text 小部件提供非空字符串。'package:flutter/src/widgets/text.dart':断言失败:第 285 行 pos 10:'data != null'
请帮助未知领域的菜鸟
解决方案
推荐阅读
- python - 将参数作为数据结构传递给 Python 函数
- qbasic - 如何在 QBasic 上通过 Internet 发送变量?
- jquery - 如何使用 jquery validate 插件验证特殊类型的数组输入
- python - QThread 没有并行运行
- sql - 如何使用 select 显示 SQL 中的工作年限?
- javascript - Object.keys = for 循环
- google-cloud-platform - 删除数据时出现云构建问题
- ruby-on-rails - 在 Rails 会话中存储类的实例会导致 TypeError 异常
- python - 在 Python 中使用 Google 翻译库时出现 Json 错误
- assembly - 返回在 MIPS 中删除了字符的字符串