升级到 flutter 3.0.0 后,运行应用程序时开始出现问题,
\n(该应用程序可以运行,但终端中出现错误(警告))。
\n这似乎是一个绑定问题。
\n错误(警告)说:\n警告:null 感知操作 \'!\' 的操作数具有类型 \'WidgetsBinding\',其中排除 null。
\n: Warning: Operand of null-aware operation \'!\' has type \'WidgetsBinding\' which excludes null.\n../\xe2\x80\xa6/src/keyboard_visibility.dart:21\n- \'WidgetsBinding\' is from \'package:flutter/src/widgets/binding.dart\' (\'../../../fvm/versions/3.0.0/packages/flutter/lib/src/widgets/binding.dart\').\npackage:flutter/\xe2\x80\xa6/widgets/binding.dart:1\n WidgetsBinding.instance!.addObserver(this);\n\n ^\n: Warning: Operand of null-aware operation \'!\' has type \'WidgetsBinding\' which excludes null.\n../\xe2\x80\xa6/src/keyboard_visibility.dart:37\n- \'WidgetsBinding\' is from \'package:flutter/src/widgets/binding.dart\' (\'../../../fvm/versions/3.0.0/packages/flutter/lib/src/widgets/binding.dart\').\npackage:flutter/\xe2\x80\xa6/widgets/binding.dart:1\n WidgetsBinding.instance!.removeObserver(this);\n ^\n: Warning: Operand of null-aware operation \'!\' has type \'WidgetsBinding\' which excludes null.\n../\xe2\x80\xa6/src/bot_toast_init.dart:15\n- \'WidgetsBinding\' is from \'package:flutter/src/widgets/binding.dart\' (\'../../../fvm/versions/3.0.0/packages/flutter/lib/src/widgets/binding.dart\').\npackage:flutter/\xe2\x80\xa6/widgets/binding.dart:1\n WidgetsBinding.instance!.addObserver(this);\n ^\n: Warning: Operand of null-aware operation \'!\' …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 API 与 PHP 后端进行通信,但无法到达响应正文。
我需要到达消息,并在 UI 中显示错误,问题是response.stream它的类型是 Bytesreem,我无法将其转换为 Map
我的代码:
Future<void> _authenticateUp(String email, String password,
String passwordconfirmation, String username, String name,
{String phonenumber}) async {
var headers = {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
};
var request = http.MultipartRequest('POST', Uri.parse('$siteUrl/register'));
request.fields.addAll({
'email': email,
'password': password,
'password_confirmation': passwordconfirmation,
'username': username,
'name': name,
'phone_number': phonenumber
});
request.headers.addAll(headers);
http.StreamedResponse response = await request.send();
try {
if (response.statusCode == 200) {
await response.stream.bytesToString().then((value) {
print(value);
});
} else {
// here …Run Code Online (Sandbox Code Playgroud)