朋友们大家好,首先我很抱歉我的英语不好。\n当我开始在 flutter-Dart 中调试代码时遇到错误。
\n import 'package:flutter/foundation.dart';\n import 'package:flutter/material.dart';\n import 'package:get/get.dart';\n import 'package:http/http.dart' as http;\n\n // Bu alan benim soru de\xc4\x9fi\xc5\x9fkenlerimi Getx yard\xc4\xb1m\xc4\xb1 ile tuttu\xc4\x9fum classd\xc4\xb1r.farkll\xc4\xb1 de\xc4\x9fi\xc5\x9fken classlar\xc4\xb1 yaz\xc4\xb1labilir.\n class memberController extends GetxController {\n //5 benim de\xc4\x9fikenimin ilk de\xc4\x9feridir.\n var _memberName = "a".obs;\n var _memberPhoto = "a".obs;\n\n //get ile \xc3\xa7eker, set ile veriyi atar\xc4\xb1m.\n get memberName => _memberName.value;\n set memberName(yeniDeger) => _memberName.value = yeniDeger;\n\n get memberPhoto => _memberPhoto.value;\n set memberPhoto(yeniDeger) => _memberPhoto.value = yeniDeger;\n }\n\n void main() => runApp(MyApp());\n\n class MyApp extends StatelessWidget {\n memberController _controller1 = Get.put(memberController());\n\n @override\n Widget build(BuildContext context) {\n return MaterialApp(\n title: 'Material App',\n home: Scaffold(\n body: SafeArea(\n child: Column(\n children: [\n TextField(\n onChanged: (Value) {\n _controller1.memberName = Value;\n },\n decoration:\n InputDecoration(border: InputBorder.none, hintText: 'memberName'),\n ),\n TextField(\n onChanged: (Value) {\n _controller1.memberPhoto = Value;\n },\n decoration:\n InputDecoration(border: InputBorder.none, hintText: 'memberPhoto'),\n ),\n ElevatedButton(\n onPressed: () async {\n final uriAAA = 'https://www.meshcurrent.online/myWebApp/add_user.php';\n var map = new Map<String, dynamic>();\n map['memberName'] = _controller1.memberName;\n map['memberPhoto'] = _controller1.memberPhoto;\n\n http.Response response = await http.post(\n Uri.parse(uriAAA),\n body: map,\n );\n },\n child: Text('SORUYU EKLE'),\n ),\n ],\n )),\n ),\n );\n }\n }\nRun Code Online (Sandbox Code Playgroud)\n这是我的代码 memberAdd.dart 文件。\n此代码的目标。\n-有两个文本字段,我将使用 getx 库从文本字段获取文本。当文本字段 onChanged getx _controller1.memberName 和 _conroller1.memberPhoto 变化时。\n当我按下 Elevated 按钮时,我会将数据从 texfields 发送到 webserber。
\n但我收到这个错误
\n/C:/src/flutter/.pub-cache/hosted/pub.dartlang.org/get-4.6.3/lib/get_navigation/src/extension_navigation.dart:357:33: Error: Method \n 'addPostFrameCallback' cannot be called on 'SchedulerBinding?' because it is \n potentially null. 'SchedulerBinding' is from \n 'package:flutter/src/scheduler/binding.dart' \n ('/C:/src/flutter/packages/flutter/lib/src/scheduler/binding.dart').\n package:flutter/\xe2\x80\xa6/scheduler/binding.dart:1\n Try calling using ?. instead.\n SchedulerBinding.instance.addPostFrameCallback((_) {\nRun Code Online (Sandbox Code Playgroud)\n像这样的错误文字还有很多。
\n请帮助我。\n我正在使用 Visual Studio
\n这是一个已知的问题。
您可以使用这个临时解决方案
但总而言之,只需更新您的pubspec.yaml:
dependencies:
# ...
get: ^4.6.x # Remove this line
get: 4.6.1 # And replace with this line
# ...
Run Code Online (Sandbox Code Playgroud)
这将强制使用不存在错误的版本。
此错误意味着您的代码中没有任何内容,而是GetX您在项目中使用的包中的错误。因此,您在项目中无能为力来解决这个问题。
通过查看异常位置,您可以注意到这与您的代码无关:
C:/src/flutter/.pub-cache/hosted/pub.dartlang.org/get-4.6.3/lib/get_navigation/src/extension_navigation.dart:357:33
Run Code Online (Sandbox Code Playgroud)
这.pub-cache/hosted/pub.dartlang.org是 Flutter 托管您所依赖的库的目录。
有时我们遇到的异常/错误与我们的项目本身无关,而是与我们依赖的包/库/插件相关。造成这种情况的原因有很多,但最常见的是当 Flutter 发生重大重大更改并且包无法正确迁移时,包的用户就会陷入包维护者犯下的错误。
说得直白一点:没有绝对的解决办法,但有一个正确的方向:
| 归档时间: |
|
| 查看次数: |
14952 次 |
| 最近记录: |