我正在使用web (Chrome)运行我的应用程序。但是,我发现了一个错误。以下是错误:
══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
The following assertion was thrown building Builder:
Assertion failed:
file:///Users/name/development/flutter/packages/flutter/lib/src/foundation/stack_frame.dart:192:7
line != '===== asynchronous gap ==========================='
"Got a stack frame from package:stack_trace, where a vm or web frame was expected. This can happen
if FlutterError.demangleStackTrace was not set in an environment that propagates non-standard stack
traces to the framework, such as during tests."
The relevant error-causing widget was:
MaterialApp
MaterialApp:file:///Users/name/development/projects/flutter/hello_world/lib/src/hello_world.dart:12:12
When the exception was thrown, this was the stack:
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 251:49 throw_
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 29:3 assertFailed
packages/flutter/src/foundation/stack_frame.dart 192:15 fromStackTraceLine
dart-sdk/lib/internal/iterable.dart 391:20 moveNext
dart-sdk/lib/internal/iterable.dart 869:20 moveNext
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 748:20 next
dart-sdk/lib/_internal/js_dev_runtime/patch/core_patch.dart 586:14 of
dart-sdk/lib/core/iterable.dart 470:12 toList
packages/flutter/src/foundation/stack_frame.dart 87:37 fromStackString
packages/flutter/src/foundation/assertions.dart 1066:54 defaultStackFilter
packages/flutter/src/foundation/assertions.dart 1260:43 _applyStackFilter
packages/flutter/src/foundation/assertions.dart 1235:17 new
packages/flutter/src/foundation/assertions.dart 725:22 debugFillProperties
packages/flutter/src/foundation/diagnostics.dart 2992:17 <fn>
packages/flutter/src/foundation/diagnostics.dart 2994:16 get builder
packages/flutter/src/foundation/assertions.dart 1285:56 get builder
packages/flutter/src/foundation/diagnostics.dart 3009:105 getProperties
packages/flutter/src/foundation/diagnostics.dart 1244:62 [_debugRender]
packages/flutter/src/foundation/diagnostics.dart 1121:14 render
packages/flutter/src/foundation/assertions.dart 1013:44 dumpErrorToConsole
packages/app/main.dart 28:69 <fn>
packages/flutter/src/foundation/assertions.dart 1177:14 reportError
packages/flutter/src/widgets/framework.dart 6408:16 _debugReportException
packages/flutter/src/widgets/framework.dart 4815:9 performRebuild
packages/flutter/src/widgets/framework.dart 4977:11 performRebuild
packages/flutter/src/widgets/framework.dart 4529:5 rebuild
packages/flutter/src/widgets/framework.dart 4787:5 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4968:11 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4781:5 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 6215:14 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 4832:16 performRebuild
packages/flutter/src/widgets/framework.dart 4529:5 rebuild
packages/flutter/src/widgets/framework.dart 4787:5 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4781:5 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 6215:14 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 6215:14 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 4832:16 performRebuild
packages/flutter/src/widgets/framework.dart 4977:11 performRebuild
packages/flutter/src/widgets/framework.dart 4529:5 rebuild
packages/flutter/src/widgets/framework.dart 4787:5 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4968:11 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4781:5 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 6350:36 inflateWidget
packages/flutter/src/widgets/framework.dart 6362:32 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 4832:16 performRebuild
packages/flutter/src/widgets/framework.dart 4977:11 performRebuild
packages/flutter/src/widgets/framework.dart 4529:5 rebuild
packages/flutter/src/widgets/framework.dart 4787:5 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4968:11 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4781:5 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 6215:14 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 4832:16 performRebuild
packages/flutter/src/widgets/framework.dart 4977:11 performRebuild
packages/flutter/src/widgets/framework.dart 4529:5 rebuild
packages/flutter/src/widgets/framework.dart 4787:5 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4968:11 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4781:5 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 6215:14 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 4832:16 performRebuild
packages/flutter/src/widgets/framework.dart 4977:11 performRebuild
packages/flutter/src/widgets/framework.dart 4529:5 rebuild
packages/flutter/src/widgets/framework.dart 4787:5 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4968:11 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4781:5 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 6215:14 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 4832:16 performRebuild
packages/flutter/src/widgets/framework.dart 4977:11 performRebuild
packages/flutter/src/widgets/framework.dart 4529:5 rebuild
packages/flutter/src/widgets/framework.dart 4787:5 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4968:11 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4781:5 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 4832:16 performRebuild
packages/flutter/src/widgets/framework.dart 4529:5 rebuild
packages/flutter/src/widgets/framework.dart 4787:5 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4781:5 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 4832:16 performRebuild
packages/flutter/src/widgets/framework.dart 4977:11 performRebuild
packages/flutter/src/widgets/framework.dart 4529:5 rebuild
packages/flutter/src/widgets/framework.dart 4787:5 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4968:11 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4781:5 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 6215:14 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 6215:14 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 4832:16 performRebuild
packages/flutter/src/widgets/framework.dart 4529:5 rebuild
packages/flutter/src/widgets/framework.dart 4787:5 [_firstBuild]
packages/flutter/src/widgets/framework.dart 4781:5 mount
packages/flutter/src/widgets/framework.dart 3817:15 inflateWidget
packages/flutter/src/widgets/framework.dart 3551:18 updateChild
packages/flutter/src/widgets/framework.dart 6215:14 mount此错误仅在使用web (Chrome)运行我的应用程序时发生。如果我使用Android Emulator,我就不会得到这个错误。
我提到了一些帖子,如Widget test fails with No MediaQuery widget found、No MediaQuery widget ancestor found、No MediaQuery ancestor could be found?和其他帖子,但仍然无法解决这个错误。
一些代码片段:
main.dart:
import 'dart:async';
import 'package:flutter/material.dart';
......
Future<void> main() async {
await runZonedGuarded(
() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
GoRouter.setUrlPathStrategy(UrlPathStrategy.path);
runApp(const ProviderScope(child: MaterialApp(home: HelloWorld())));
......
},
(Object error, StackTrace stack) {
debugPrint(error.toString());
debugPrint(stack.toString());
},
);
}hello_world.dart:
import 'package:flutter/material.dart';
import 'package:hello_world/src/app.dart';
......
class HelloWorld extends StatelessWidget {
const HelloWorld({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) => MaterialApp(
theme: ......,
home: const App(),
);
}app.dart:
import 'package:flutter/material.dart';
......
class App extends ConsumerStatefulWidget {
const App({Key? key}) : super(key: key);
@override
ConsumerState<App> createState() => _AppState();
}
class _AppState extends ConsumerState<App> {
@override
void initState() {
super.initState();
kIsWeb ? null : ......;
}
@override
Widget build(BuildContext context) {
......
return Scaffold(
body: ......,
);
}
}我不太确定错误是否是从这一行派生出来的:
runApp(const ProviderScope(child: MaterialApp(home: HelloWorld())));如何纠正此错误?感谢有人能给我建议。提前谢谢你!
发布于 2022-09-19 08:43:25
我通过设置FlutterError.demangleStackTrace来解决这个错误
import 'package:stack_trace/stack_trace.dart' as stack_trace;FlutterError.demangleStackTrace = (StackTrace stack) {
if (stack is stack_trace.Trace) return stack.vmTrace;
if (stack is stack_trace.Chain) return stack.toTrace().vmTrace;
return stack;
};发布于 2022-09-07 08:16:21
我的一位同事也犯了类似的错误,这是由于一个空字符串给了一个网络映像。我可以在您的堆栈跟踪中看到,在iterable.dart > moveNext中抛出了一个错误。所以这让我觉得你的问题是由一个无效的循环或者类似的东西引起的。
https://stackoverflow.com/questions/73591769
复制相似问题