Flutter-防京东商城项目-事件广播event_bus-26

一直觉得自己写的不是技术,而是情怀,一个个的教程是自己这一路走来的痕迹。靠专业技能的成功是最具可复制性的,希望我的这条路能让你们少走弯路,希望我能帮你们抹去知识的蒙尘,希望我能帮你们理清知识的脉络,希望未来技术之巅上有你们也有我。

代码文档

Flutter防京东商城源码(1-10)链接

Flutter防京东商城源码(11-20)链接

Flutter防京东商城源码(21-30)链接

Flutter防京东商城源码(31-46)链接

1.安装第三方 用于添加购物车

  # 事件广播
  event_bus: ^1.1.0

创建一个新的页面 EventBus
在这里插入图片描述

import 'package:event_bus/event_bus.dart';

//Bus 初始化
EventBus eventBus = EventBus();

class ProductContentEvent{
  String str;
  ProductContentEvent(String str){
    this.str=str;
  }
}

回到页面
在这里插入图片描述

import 'package:flutter_app/services/EventBus.dart';

4.创建事件属性

var actionEventBus;

5.注册监听方法
在这里插入图片描述

@override
void initState() {
  super.initState();
  this._productContent = widget._productContentList[0];
  this._attr = this._productContent.attr;
  _initAttr();



//--------------------------------------------
  this.actionEventBus=eventBus.on<ProductContentEvent>().listen((str) {
    print(str);
    this._attrBottomSheet();
  });
//--------------------------------------------





}

6.销毁事件

//销毁
void dispose(){
  super.dispose();
   this.actionEventBus.cancel();  //取消事件监听
}

在这里插入图片描述

7.回到下面的页面
在这里插入图片描述

向下拉,去到点击购物车,跟立即购买噶方法里面加上下面的代码

导入

import 'package:flutter_app/services/EventBus.dart';

在这里插入图片描述
在这里插入图片描述

Expanded(
  flex: 1,
  child: JdButton(
    color:Color.fromRGBO(253, 1, 0, 0.9),
    text: "加入购物车",
    cb: (){





//--------------------------------------------
      if(this._productContentList[0].attr.length>0){
          //广播 弹出筛选
          eventBus.fire(new ProductContentEvent('加入购物车'));
      }else{
        print("加入购物车操作");
      }
//--------------------------------------------



    },
  ),
),
Expanded(
  flex: 1,
  child: JdButton(
    color: Color.fromRGBO(255, 165, 0, 0.9),
    text: "立即购买",
    cb: (){




//--------------------------------------------
      if(this._productContentList[0].attr.length>0){
          //广播 弹出筛选
          eventBus.fire(new ProductContentEvent('立即购买'));
      }else{
          print("立即购买");
      }
//--------------------------------------------





    },
  ),
)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冯汉栩

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值