From 116c2fbe028e6603d7172fb10f0782e447f82779 Mon Sep 17 00:00:00 2001 From: Weller <1812208341@qq.com> Date: Fri, 16 Oct 2020 18:11:12 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=BA=95=E9=83=A8=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/pages/home_page/home_page.dart | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/lib/pages/home_page/home_page.dart b/lib/pages/home_page/home_page.dart index 7205df4..d4355a0 100644 --- a/lib/pages/home_page/home_page.dart +++ b/lib/pages/home_page/home_page.dart @@ -3,6 +3,7 @@ import 'dart:convert' as convert; import 'package:cached_network_image/cached_network_image.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; import 'package:zhiying_base_widget/utils/contants.dart'; import 'package:zhiying_comm/models/base/base_tab_model.dart'; import 'package:zhiying_comm/util/image_util.dart'; @@ -105,12 +106,30 @@ class _HomePageState extends State { unselectedFontSize: 11, currentIndex: _currentIndex, elevation: 0, - onTap: ((index) { - setState(() { - _currentIndex = index; - }); + onTap: ((index) async { + BaseTabModel model = BaseTabModel.fromJson(tabs[index]); + if (await _checkLimit(model)) { + setState(() { + _currentIndex = index; + }); + } }), //底部导航栏 items: items); } + + Future _checkLimit(BaseTabModel model) async { + if (model.requiredLogin == '1') { + UserInfoModel user = + await Provider.of(context, listen: false) + .getUserInfoModel(); + print(user.toString()); + if (user?.token == null || user.token == '') { + print('need login...'); + RouterUtil.goLogin(context); + return false; + } + } + return true; + } }