我正在扩展flutter_gallery示例。
我尝试创建新的图库项目
new GalleryItem(
title: 'Journal',
subtitle: 'Example app coding',
category: 'Apps',
routeName: JournalDemo.routeName,
buildRoute: (BuildContext context) => new JournalDemo()
),
我导入了import '../journal/journal_all.dart';
我有export 'journal_demo.dart';
JournalDemo
类与ListDemo
是同一个类,我只更改了类名和州名:
class JournalDemo extends StatefulWidget {
JournalDemo({ Key key }) : super(key: key);
static const String routeName = '/journal';
@override
JournalDemoState createState() => new JournalDemoState();
}
class JournalDemoState extends State<JournalDemo> {
.......
这是我得到的例外
I/flutter : ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
I/flutter : The following NoSuchMethodError was thrown building GalleryApp(dirty; state:
I/flutter : GalleryAppState(48280642)):
I/flutter : No top-level getter 'JournalDemo' declared.
I/flutter : NoSuchMethodError: method not found: 'JournalDemo'
I/flutter : Receiver: top-level
I/flutter : Arguments: [...]
I/flutter : When the exception was thrown, this was the stack:
I/flutter : #0 NoSuchMethodError._throwNew (dart:core-patch/errors_patch.dart:184)
I/flutter : #1 kAllGalleryItems (/Users/matej/IdeaProjects/flutter/journal/lib/gallery/item.dart:51)
I/flutter : #2 kAllGalleryItems (/Users/matej/IdeaProjects/flutter/journal/lib/gallery/item.dart:45)
我应该改变什么?
谢谢
答案 0 :(得分:1)
这看起来你的代码中缺少导入或解析错误。我建议您使用flutter analyze
作为上述海报之一建议。
No top-level getter 'JournalDemo' declared
表示它无法在全局范围内找到值JournalDemo
。要么是因为它未导入,要么是因为在此错误之前存在解析错误。