将数据从他的 Statefulwidget 传递到 State

Passing data to a State from his Statefulwidget

这是我的代码,我想从 StatefulWudget 访问“initialValue”属性,但由于某种原因在 counter = widget.initialValue 中标记了一个错误 the image with the error from vs code。 我正在学习一门课程,但我不知道新版本是否有所变化,导致我发现的所有问题都使用相同的代码。

class MyCounter extends StatefulWidget{


 final int initialValue;

  const MyCounter({Key? key, this.initialValue = 0}) : super(key: key);
  @override
  State createState(){ //puede ser lamda => MyCounterState();
    return MycounterState();
  }
}

class MycounterState extends State{

  int counter = 0;

  @override
  void initState() {
    // TODO: implement initState
    super.initState();
    counter = widget.initialValue;
  }
...

或者我在代码的不同部分有错误吗?

对于有同样问题的人,解决方案(在 discord 官方 flutter 服务器中找到)是 “您的状态必须有一个包含小部件的类型参数”

class MyCounter extends StatefulWidget{
  final int initialValue;

  const MyCounter({Key? key, this.initialValue = 0}) : super(key: key);
  @override
  State<MyCounter> createState(){ //puede ser lamda => MyCounterState();
    return MycounterState();
  }
}

class MycounterState extends State<MyCounter>{

  int counter = 0;

  @override
  void initState() {
    // TODO: implement initState
    super.initState();
    counter = widget.initialValue;
  }

只需将 MyCounter class 的“createState()”和 MyCounterState [=19 的“extends State{”中的 State 更改为 State<MyCounter> =]