首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从package:stack_trace获得堆栈框架,其中期望有vm或web框架

从package:stack_trace获得堆栈框架,其中期望有vm或web框架
EN

Stack Overflow用户
提问于 2022-09-03 11:10:44
回答 2查看 895关注 0票数 4

我正在使用web (Chrome)运行我的应用程序。但是,我发现了一个错误。以下是错误:

代码语言:javascript
复制
══╡ 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 foundNo MediaQuery widget ancestor foundNo MediaQuery ancestor could be found?和其他帖子,但仍然无法解决这个错误。

一些代码片段:

main.dart:

代码语言:javascript
复制
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:

代码语言:javascript
复制
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:

代码语言:javascript
复制
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: ......,
    );
  }
}

我不太确定错误是否是从这一行派生出来的:

代码语言:javascript
复制
runApp(const ProviderScope(child: MaterialApp(home: HelloWorld())));

如何纠正此错误?感谢有人能给我建议。提前谢谢你!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-09-19 08:43:25

我通过设置FlutterError.demangleStackTrace来解决这个错误

代码语言:javascript
复制
import 'package:stack_trace/stack_trace.dart' as stack_trace;

代码语言:javascript
复制
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;
};
票数 8
EN

Stack Overflow用户

发布于 2022-09-07 08:16:21

我的一位同事也犯了类似的错误,这是由于一个空字符串给了一个网络映像。我可以在您的堆栈跟踪中看到,在iterable.dart > moveNext中抛出了一个错误。所以这让我觉得你的问题是由一个无效的循环或者类似的东西引起的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73591769

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档