直播跳转监听

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;
}
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) {}
}
store.state.openinstall.channelCode = data['channelCode'];

@ -46,6 +46,8 @@ class UserManager {
ValueNotifier<bool> selectTabbar = ValueNotifier(false);
//webview
ValueNotifier<bool> openInstallGoodsId = ValueNotifier(false);
ValueNotifier<bool> openInstallLive = ValueNotifier(false);
int selectTabbarIndex;
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_sliver_app_bar.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_tool.dart';
import 'package:recook/third_party/wechat/wechat_utils.dart';
@ -150,6 +151,27 @@ class _HomePageState extends BaseStoreState<HomePage>
UserManager.instance.openInstallGoodsId
.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();
_sliverListController = ScrollController();
_gsRefreshController = GSRefreshController();

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

Loading…
Cancel
Save