簡體   English   中英

Flutter | 如何使用 void initState 中的數據?

[英]Flutter | How can I use the data in void initState?

嗨,我想在 BODY 標記內的 initState 中使用 pages 變量。

class LoggedInPage extends StatefulWidget {
  final GoogleSignInAccount user;

  const LoggedInPage({Key? key, required this.user}) : super(key: key);

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

class _LoggedInPageState extends State<LoggedInPage>
    with SingleTickerProviderStateMixin {
  late TabController _tabController;
  int _currentPosition = 0;


  @override
  void initState() {
    _tabController = TabController(length: 2, vsync: this);
    super.initState();
    final _pages = [
      BT(),
      UZEMPage(user: widget.user),
    ];
  }

但他們看不到對方。

body: _pages[_currentPosition],

錯誤描述

未定義的名稱“_pages”。 嘗試將名稱更正為已定義的名稱,或定義名稱。

預先感謝您對我們的支持。

_pages是方法中的局部變量。 您必須在 class 中聲明它(在_currentPosition之下或之上)。

class LoggedInPage extends StatefulWidget {
  final GoogleSignInAccount user;

  const LoggedInPage({Key? key, required this.user}) : super(key: key);

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

class _LoggedInPageState extends State<LoggedInPage>
    with SingleTickerProviderStateMixin {
  late TabController _tabController;
  int _currentPosition = 0;
  late List _pages;

  @override
  void initState() {
    _tabController = TabController(length: 2, vsync: this);
    super.initState();
   _pages = [
      BT(),
      UZEMPage(user: widget.user),
    ];
  }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM