无效的构造函数名称和未定义的类

时间:2018-07-05 22:37:57

标签: mobile dart flutter

我试图在下面的代码中在ClassTwo中创建ClassOne的实例,但是我遇到了错误%7B%22url%22%3Anull%2C%22landing_page%22%3A%22%5C%2F%5C%2Fwww.site.com%5C%2FcookieTest.php%3Ftest%3Dtest%22%2C%22date%22%3A%222018-07-05+17%3A33%3A34%22%7D Invalid constructor name,我该如何正确地做到这一点

Undefined class 'instOne .person

1 个答案:

答案 0 :(得分:0)

您可以在ClassOne中创建ClassTwo的实例,因为您正在定义一个字段,但是请考虑一下:该代码何时执行? instOne.person;。现在要解决该问题,您必须在构造函数或小部件的initstate中执行此代码,并且首先执行构造方法之间的区别

在构造函数中

  var instone= ClassOne();
  _ClassTwoState(){
    instone.person="test";
  }

处于小部件的初始状态

  @override
  void initState() {
    instone.person="test";
    super.initState();
  }

还必须在ClassTwo中声明要在ClassTwoState中使用的字段和函数

class ClassOne extends StatefulWidget {
  var person= 'myname';
  hey(){
    print('hey hello');
  }
  @override
  ClassOneState createState() =>  ClassOneState();
}

full example