簡體   English   中英

setState 未引用flutter 3.0

[英]setState isn't referenced flutter 3.0

我正在做一個學校項目,因為我們將顫振版本從 2.X 更新到 3.0.1,所以我們遇到了這個問題:未引用 setState。 我們不明白,因為我們在 statefulWidget 中使用它。 我們上網說明問題出在哪里,但我們找不到讓它工作的方法,因為大多數時候這是因為人們使用無狀態小部件,這不是我們的情況。

文件開頭:

``` class PageProfilAmi extends StatefulWidget {
  final User user;
  final String? idRelation;

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

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

class _PageProfilAmiState extends State<PageProfilAmi> {
  IconData _icon = Icons.add;

  @override
  void initState() {
    super.initState();
  } ``` 

我們有問題的地方:

``` IconButton(
            onPressed: () {
                setState() {
                              _icon = Icons.delete;
                            }

                AuthController.deleteAmi(
                           widget.idRelation.toString());
                          },
                icon: Icon(
                           _icon,
                           color: CustomColors.MAIN_PURPLE,
                           size: 20,
                          ),
        ) ```

在此處輸入代碼這里的問題是 setState 的語法

setState(() { 

// code 

 });

你有 setState 寫錯了。 在一個有狀態的小部件中, setState 是這樣調用的:

setState(() {
    //do something
  });

基本上你缺少外括號 '(' ')'

暫無
暫無

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

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