【问题标题】:Uri.parse('https://www.a2rstore.in/api/school/v1/noticeApi.php?id=${widget.s_id}'); got error on widget.s_iduri.parse('https://www.a2rstore.in/api/school/v1/noticeApi.php?id=${widget.s_id}'); widget.s_id 出错
【发布时间】:2021-07-07 10:25:22
【问题描述】:
class Notice extends StatefulWidget {
  final String s_id;

  const Notice({Key key, this.s_id}) : super(key: key);

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

class _NoticeState extends State<Notice> {
  TextEditingController _titleController = new TextEditingController();

  var api =
      Uri.parse('https://www.a2rstore.in/api/school/v1/noticeApi.php?id=${widget.s_id}');

【问题讨论】:

标签: flutter dart flutter-layout flutter-animation flutter-test


【解决方案1】:

你不能在没有上下文的情况下调用“小部件”。 正确的做法是首先定义你的变量:

class _NoticeState extends State<Notice> {
  TextEditingController _titleController = new TextEditingController();

  var api;
  ...
}

然后在 build 或 initState 方法中为其赋值:

@override
initState(){
   api = Uri.parse('https://www.a2rstore.in/api/school/v1/noticeApi.php?id=${widget.s_id}');
}

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-09-06
  • 2016-12-26
  • 2013-06-16
  • 1970-01-01
  • 1970-01-01
  • 2014-12-24
  • 2013-11-19
相关资源
最近更新 更多