无法从AlertDialog访问类变量

时间:2018-12-17 10:47:43

标签: dart flutter

我有一个名为HomePage的StatefulWidget,带有一个名为_messages的类变量。

class HomePageState extends State<HomePage>{
    final List<Msg> _messages = <Msg>[];
...

我还有一个IconButton,它将弹出一个对话框,其中包含一个FlatButton,按下该对话框将清除_messages变量中的所有项目。

void showMyPopup() async{
    return showDialog(
        content: FlatButton(
            onPressed: () {
                setState((){
                    _messages = [];
...

但是flutter / dart给了我一个错误,该错误说HomePage没有_messages变量。

当我不在对话框中但不在对话框中时,我可以访问_messages。

我想知道我的代码出了什么问题。我真的很感谢任何形式的帮助。

1 个答案:

答案 0 :(得分:1)

尝试widget._messages,请不要将变量定为final。 final是最终的,无法更改。