You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter如何在State类中访问所属StatefulWidget的成员数据?

问题原因

在Flutter的State<T extends StatefulWidget>子类中,无法直接访问关联的StatefulWidget类中定义的成员变量,需要通过State类自带的widget属性来获取父组件的传入参数。你当前代码中直接写profile.name,程序会认为你要访问_DisplayProfileState类内部定义的profile变量,而你并没有在State类中声明这个变量,因此抛出找不到getter的错误。

解决方案

把所有直接调用profile的位置,替换为widget.profile即可,修改后的代码示例如下:

Widget profileWidget() {
  return SingleChildScrollView(
    child: Column(crossAxisAlignment: CrossAxisAlignment.start, children: <Widget>[
      Padding(
        padding: EdgeInsets.all(4.0),
        child: Text("Name",
            style: TextStyle(fontWeight: FontWeight.bold))),
      Padding(
        padding: EdgeInsets.all(4.0),
        child: Text(widget.profile.name,
            style: TextStyle(fontWeight: FontWeight.bold))),
      Padding(
        padding: EdgeInsets.all(4.0),
        child: Text("E-mail",
            style: TextStyle(fontWeight: FontWeight.bold))),
      Padding(
        padding: EdgeInsets.all(4.0),
        child: Text(widget.profile.email,
            style: TextStyle(fontWeight: FontWeight.bold))),
    ]));
}

内容的提问来源于stack exchange,提问作者anta40

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 00:15:03