如果可能的话,你可以帮助我识别Flutter中嵌套类的问题。
AccountEditPage(uuid)-> AccountAddPage(title)-> AbstractPage(selectedMenu)AccountEditPageState -> AccountAddPageState -> AbstractPageState
由于某些原因,无法从AccountEditPageState访问widget.uuid
,并失败,并显示错误The getter 'uuid' isn't defined for the type 'AccountAddPage'.
代码
import 'package:flutter/material.dart';
class AccountEditPage extends AccountAddPage {
String uuid;
AccountEditPage({
required this.uuid,
}) : super();
@override
AccountEditPageState createState() => AccountEditPageState();
}
class AccountEditPageState extends AccountAddPageState<AccountEditPage> {
String get uuid => widget.uuid; // ERROR: The getter 'uuid' isn't defined for the type 'AccountAddPage'.
}
class AccountAddPage extends AbstractPage {
String? title;
AccountAddPage({
this.title,
}) : super();
@override
AccountAddPageState createState() => AccountAddPageState();
}
class AccountAddPageState<T extends AccountAddPage> extends AbstractPageState<AccountAddPage> {
String? get title => widget.title; // OK
}
abstract class AbstractPage<T> extends StatefulWidget {
int selectedMenu = 0;
AbstractPage() : super(key: UniqueKey());
}
abstract class AbstractPageState<T extends AbstractPage> extends State<T> {
@override
Widget build(BuildContext context) {
return Text('test');
}
}
先谢谢你了!
1条答案
按热度按时间whitzsjs1#
解决方案并不明显,但下一个: