直播跳转监听

master
laiiihz 5 years ago
parent c9fb84182e
commit c45c5a0897

@ -167,6 +167,12 @@ class MyAppState extends State<MyApp> {
UserManager.instance.openInstallGoodsId.value = UserManager.instance.openInstallGoodsId.value =
!UserManager.instance.openInstallGoodsId.value; !UserManager.instance.openInstallGoodsId.value;
} }
if (decode.containsKey("type")) {
store.state.openinstall.type = decode['type'];
store.state.openinstall.itemId = decode['itemId'];
UserManager.instance.openInstallLive.value =
!UserManager.instance.openInstallLive.value;
}
} catch (e) {} } catch (e) {}
} }
store.state.openinstall.channelCode = data['channelCode']; store.state.openinstall.channelCode = data['channelCode'];

@ -46,6 +46,8 @@ class UserManager {
ValueNotifier<bool> selectTabbar = ValueNotifier(false); ValueNotifier<bool> selectTabbar = ValueNotifier(false);
//webview //webview
ValueNotifier<bool> openInstallGoodsId = ValueNotifier(false); ValueNotifier<bool> openInstallGoodsId = ValueNotifier(false);
ValueNotifier<bool> openInstallLive = ValueNotifier(false);
int selectTabbarIndex; int selectTabbarIndex;
bool get haveLogin => login.value; bool get haveLogin => login.value;

@ -40,6 +40,7 @@ import 'package:recook/pages/home/widget/goods_list_temp_page.dart';
import 'package:recook/pages/home/widget/home_countdown_widget.dart'; import 'package:recook/pages/home/widget/home_countdown_widget.dart';
import 'package:recook/pages/home/widget/home_sliver_app_bar.dart'; import 'package:recook/pages/home/widget/home_sliver_app_bar.dart';
import 'package:recook/pages/home/widget/home_weather_view.dart'; import 'package:recook/pages/home/widget/home_weather_view.dart';
import 'package:recook/pages/live/live_stream/live_stream_view_page.dart';
import 'package:recook/pages/noticeList/notice_list_model.dart'; import 'package:recook/pages/noticeList/notice_list_model.dart';
import 'package:recook/pages/noticeList/notice_list_tool.dart'; import 'package:recook/pages/noticeList/notice_list_tool.dart';
import 'package:recook/third_party/wechat/wechat_utils.dart'; import 'package:recook/third_party/wechat/wechat_utils.dart';
@ -150,6 +151,27 @@ class _HomePageState extends BaseStoreState<HomePage>
UserManager.instance.openInstallGoodsId UserManager.instance.openInstallGoodsId
.addListener(_openInstallGoodsIdListener); .addListener(_openInstallGoodsIdListener);
UserManager.instance.openInstallLive.addListener(() {
if (getStore().state.openinstall.type == 'live') {
CRoute.push(
context,
LiveStreamViewPage(
id: int.parse(getStore().state.openinstall.itemId)));
}
if (!TextUtils.isEmpty(getStore().state.openinstall.type)) {
int goodsid = 0;
try {
goodsid = int.parse(getStore().state.openinstall.goodsid);
} catch (e) {
getStore().state.openinstall.goodsid = "";
return;
}
AppRouter.push(context, RouteName.COMMODITY_PAGE,
arguments: CommodityDetailPage.setArguments(goodsid));
getStore().state.openinstall.goodsid = "";
}
});
_updateSource(); _updateSource();
_sliverListController = ScrollController(); _sliverListController = ScrollController();
_gsRefreshController = GSRefreshController(); _gsRefreshController = GSRefreshController();

@ -1,14 +1,15 @@
import 'package:redux/redux.dart'; import 'package:redux/redux.dart';
class Openinstall{ class Openinstall {
String channelCode; String channelCode;
String bindData; String bindData;
String code; String code;
String goodsid; String goodsid;
String date; String date;
String type;
String itemId;
Openinstall(this.channelCode, this.bindData); Openinstall(this.channelCode, this.bindData);
Openinstall.empty() { Openinstall.empty() {
this.channelCode = ""; this.channelCode = "";
this.bindData = ""; this.bindData = "";
@ -17,17 +18,15 @@ class Openinstall{
} }
} }
final OpeninstallReducer = combineReducers<Openinstall>([ final OpeninstallReducer = combineReducers<Openinstall>(
TypedReducer<Openinstall, UpdateOpeninstallAction>(UpdateOpeninstall) [TypedReducer<Openinstall, UpdateOpeninstallAction>(UpdateOpeninstall)]);
]);
Openinstall UpdateOpeninstall(Openinstall openinstall, action) { Openinstall UpdateOpeninstall(Openinstall openinstall, action) {
openinstall = action.openinstall; openinstall = action.openinstall;
return openinstall; return openinstall;
} }
class UpdateOpeninstallAction{ class UpdateOpeninstallAction {
final Openinstall openinstall; final Openinstall openinstall;
UpdateOpeninstallAction(this.openinstall); UpdateOpeninstallAction(this.openinstall);
} }

Loading…
Cancel
Save