Flutter OneContext 错误“OneContext 未启动!请使用构建器方法”

问题描述 投票:0回答:1

当我第一次运行应用程序或重新启动应用程序时,控制台中会出现此错误。我尝试了一些方法,但没有成功。请问有什么解决办法吗?

这是

main.dart
:

void main() {
    WidgetsFlutterBinding.ensureInitialized();
    OneContext().key = GlobalKey<NavigatorState>();
    OnePlatform.app = () => const MyApp();
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return Material(
      child: MaterialApp(
        title: ...,
        builder: OneContext().builder,
        navigatorKey: OneContext().key,
        debugShowCheckedModeBanner: false,
        theme: ThemeData(
          colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
          useMaterial3: false,
        ),
        home: const HomePage()
      ),
    );
  }
  • 颤振版本:3.22.2
  • OneContext 版本:4.0.0

https://github.com/user-attachments/assets/3c59c16f-c702-4b11-8b2c-73eed27e5fdb

flutter flutter-packages
1个回答
0
投票

那是因为你在 main 初始化之前使用了

OneContext()

因此,您需要在

OneContext()
中初始化
main()
之前删除
OneContext
中对
OnePlatform.app = () => const MyApp();
的使用,只需修改您的
main()
,如下所示:

void main() {
  WidgetsFlutterBinding.ensureInitialized();
  OnePlatform.app = () => const MainApp();
}

我删除了

OneContext().key = GlobalKey<NavigatorState>();
线。

© www.soinside.com 2019 - 2024. All rights reserved.