颤振网:"Should never encounter KeyData when transitMode is rawKeyData."

Flutter Web : "Should never encounter KeyData when transitMode is rawKeyData."

当我 运行 我在网络上的项目时,异常消息和堆栈跟踪是

"Should never encounter KeyData when transitMode is rawKeyData."
    at Object.throw_ [as throw] (http://localhost:2621/dart_sdk.js:5061:11)
    at Object.assertFailed (http://localhost:2621/dart_sdk.js:4986:15)
    at hardware_keyboard.KeyEventManager.new.handleKeyData (http://localhost:2621/packages/flutter/src/services/restoration.dart.lib.js:5334:28)
    at http://localhost:2621/dart_sdk.js:160131:47
    at Object.invoke (http://localhost:2621/dart_sdk.js:179656:7)
    at _engine.EnginePlatformDispatcher.__.invokeOnKeyData (http://localhost:2621/dart_sdk.js:160131:17)
    at _engine.KeyboardBinding.__.[_onKeyData] (http://localhost:2621/dart_sdk.js:158922:49)
    at _engine.KeyboardConverter.new.handleEvent (http://localhost:2621/dart_sdk.js:159210:16)
    at http://localhost:2621/dart_sdk.js:158929:74
    at loggedHandler (http://localhost:2621/dart_sdk.js:158906:43)
Error: Assertion failed: file:///E:/flutter_windows_2.5.2-stable/flutter/packages/flutter/lib/src/services/hardware_keyboard.dart:787:16

尝试其中一种

flutter run -d chrome --web-renderer html

flutter build web --web-renderer html

如果您在设备或模拟器或模拟器上遇到问题,只需关闭应用程序并再次 运行。

就我而言,我已经在 init 方法中初始化了控制器,并且我更改了与控制器相关的内容,因此需要对其进行更新。这就是我们需要重新运行的原因。

P.S。我想重新启动应用程序,但对我不起作用。

我也遇到过这个问题。我在 MacOS 上使用 emulator/simulator 时得到它。这会完全杀死模拟器上的应用程序,hot-reload 无法解决此问题,在 hot-reload 应用程序完全冻结后。

我解决这个问题的唯一方法是完全退出模拟器和 VS 代码项目。重新加载 VS Code 项目和模拟器,它再次工作。

这是一个可怕的问题,会严重中断开发和生产。希望尽快修复!

在我的例子中,它与我的小部件状态有关,该状态连接到从未注入到小部件树中的 GetX 控制器。所以它用尴尬的日志抱怨未初始化状态。

完全重新 运行 申请。