【问题标题】:Parsing Data to Stateful Widget将数据解析为有状态小部件
【发布时间】:2020-03-15 19:44:22
【问题描述】:

我正在尝试将数据从屏幕解析到另一个屏幕,定位屏幕有状态小部件,但我发现错误说我想要解析的数据没有定义,尽管我已经定义了它,请帮助..谢谢。。

这是我的代码,

    var data_id;
    if (_keyForm.currentState.validate()) {
      _keyForm.currentState.save();

      // var data = "wmsorders_id='" + data_id + "'";

      // var response = await RestService()
      //     .restRequestServiceGet(SystemParam.URL_UPCOMING, data);

      // print("response : " + response.body.toString());
      // UpcomingModel upcomingModel;

      // upcomingModel = UpcomingModel.fromJson(jsonDecode(response.body));

      try {
          Navigator.push(
              context, MaterialPageRoute(builder: (context) => PickUp(
                data_id: data_id
                ))
              );
          Toast.show("Parsing: " + data_id, context,);
      } catch (e) {
        Toast.show("Error:something wrong", context,
            duration: Toast.LENGTH_SHORT, gravity: Toast.BOTTOM);
      }

    }
  }

我这里尝试解析数据,


class PickUp extends StatefulWidget {
  @override
  _PickUpState createState() => _PickUpState();
}

class _PickUpState extends State<PickUp> {
  var data_id;
  PickUp({Key key, this.data_id});
}

我得到了这个错误,

【问题讨论】:

标签: flutter


【解决方案1】:

在 PickUp 类中添加构造函数

class PickUp extends StatefulWidget {
  final String data_id;
  PickUp({this.data_id});

  @override
  _PickUpState createState() => _PickUpState();
}

然后你可以在构建方法中使用data_id

@override
  Widget build(BuildContext context) {
    return Text(widget.data_id);
  }

【讨论】:

    猜你喜欢
    • 2021-08-29
    • 2020-05-09
    • 2019-12-20
    • 2023-03-26
    • 2020-01-23
    • 1970-01-01
    • 2021-09-21
    • 2019-10-06
    • 2020-08-06
    相关资源
    最近更新 更多