flutter 遇到 for 循环报错 Expected a class member,看不懂是什么原因?

最近在学flutter,自己正捣鼓一些代码,写了如下几行


class _TabPageState extends State<TabPage>{
  
  final _defaultColor = Colors.grey;
  final _activeColor = Colors.blue;
  int _currentIndex = 0;
  final PageController _controller = PageController(
    initialPage: 0
  );

  List<_TabPage> tabs = [
    _TabPage("首页", const HomePage(), Icons.home),
    _TabPage("我的", const UserPage(), Icons.account_circle),
  ];
  late List<BottomNavigationBarItem> arr =[];

  for (var i = 0; i < tabs.length; i++) {
    _TabPage tab = tabs[i];
    arr.add(BottomNavigationBarItem(
      icon: Icon(
        tab.icon,
        color: _defaultColor,
      ),
      activeIcon: Icon(
        tab.icon,
        color: _activeColor,
      ),
      label: tab.label,
    ));
  }

在for遍历那一行给我报了一个看不懂的错,我寻思没写错呀~~,苦恼...,为什么呀?

Expected a class member.
Try placing this code inside a class member. dart (expected class member)

image.png

阅读 2.9k
1 个回答

要把for写到函数里面, 或者写到initState里面

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题