gpt4 book ai didi

Flutter auto_route_generator 未构建,FormatException : Not an instance of List

转载 作者:行者123 更新时间:2023-12-05 08:20:04 28 4
gpt4 key购买 nike

我正在尝试运行 Flutter pub run build_runner build,生成用于导航的 router.g.dart 文件。

我已经运行了一个 build_runner clean,一个完整的项目,然后构建但没有运气。我正在学习一个教程,他似乎只是用我拥有的代码来运行它并且它很好。评论中似乎没有其他人有这个问题,我在网上找不到任何相关信息。

它没有说:

[SEVERE] auto_route_generator:autoRouteGenerator on lib/app/router.dart:

FormatException: Not an instance of List.
[INFO] Running build completed, took 16.2s

[INFO] Caching finalized dependency graph...
[INFO] Caching finalized dependency graph completed, took 48ms

[SEVERE] Failed after 16.3s
pub finished with exit code 1

我的 router.dart 代码:

import 'package:auto_route/auto_route_annotations.dart';
import 'package:stacktest/ui/views/covers/cover_view.dart';
import 'package:stacktest/ui/views/home/home_view.dart';
import 'package:stacktest/ui/views/startup/startup_view.dart';

@MaterialAutoRouter()
class $Router {
@initial
StartupView startupViewRoute;
HomeView homeViewRoute;
CoverView coverViewRoute;
}

Pubspec.yaml:

  sdk: ">=2.7.0 <3.0.0"

dependencies:
flutter:
sdk: flutter


# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.3
stacked: ^1.7.1+1
auto_route: 0.6.1
stacked_services: 0.4.4+3

dev_dependencies:
build_runner: 1.10.0
auto_route_generator: 0.6.0
flutter_test:
sdk: flutter

flutter 医生-v

✓] Flutter (Channel master, 1.20.0-8.0.pre.41, on Mac OS X 10.15.5 19F101, locale en-AU)
• Flutter version 1.20.0-8.0.pre.41 at /Users/mikaelwills/Documents/Flutter
• Framework revision fd80503fd3 (34 hours ago), 2020-07-10 14:41:02 +0530
• Engine revision 9b3e3410f0
• Dart version 2.9.0 (build 2.9.0-20.0.dev 06cb010247)


[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
• Android SDK at /Users/mikaelwills/Library/Android/sdk
• Platform android-29, build-tools 29.0.2
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
• All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 11.5, Build version 11E608c
• CocoaPods version 1.8.4

[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 3.5)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin version 42.1.1
• Dart plugin version 191.8593
• Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)

[✓] VS Code (version 1.47.0)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.12.2

[✓] Connected device (2 available)
• Web Server (web) • web-server • web-javascript • Flutter Tools
• Chrome (web) • chrome • web-javascript • Google Chrome 83.0.4103.116

• No issues found!

最佳答案

0.6.0 版本以来,auto_route package 中出现了一些重大变化。 ,最重要的是将路由声明方式从类字段更改为静态列表。您可以查看更多详情here .

因此,为了修复它,只需使用静态列表更新它,如下所示:

@MaterialAutoRouter(
routes: <AutoRoute>[
MaterialRoute(page: StartupView, initial: true),
MaterialRoute(page: HomeView),
MaterialRoute(page: CoverView),
],
)
class $Router {}

然后运行构建运行器命令:flutter pub run build_runner watch --delete-conflicting-outputs

另一个选项可以使用早期版本,如 0.5.0,但建议保持更新,有关更多信息,请查看 auto route package 中的文档。 .

关于Flutter auto_route_generator 未构建,FormatException : Not an instance of List,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62853598/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com