promate_pop.js 2.07 KB
Component({
  /*** 页面的初始数据***/
  data: {
	  type:0,     //0只显示再商品详情页面   1显示再有选择按钮
	  pro_pop:0,  //是否弹出
	  cx_prom_group:[], //弹出框的内容展示
	  is_cart:0
  },
  methods: {
	  //-- 初始化弹出框 --
	  set_init(type,cx_prom_group,is_cart){
		 if(!type) type=0;
		 if(!is_cart) is_cart=0;

		 var fd=cx_prom_group.findIndex(function (gh){
			 return gh.sele
		 })
		 if(fd==-1){
			 cx_prom_group[0].sele=1;
		 }
         this.setData({
			 type:type,pro_pop:1,cx_prom_group,is_cart:is_cart
		 })
	  },

	  /*----pop的开关,如果按钮是‘确定’,就要返回参数给父层组件---*/
	  close_pro_pop: async function (e) {
		  this.setData({pro_pop: 0});
		  if(!this.data.type) return false;
		  var idx=this.data.cx_prom_group.findIndex(function (e){
			  return e.sele==1;
		  })
		  this.triggerEvent('sure_cx_group',{sele_idx:idx},{bubbles: true});
	  },

	  go_the_url:function (e){
		  var index=e.currentTarget.dataset.index;
		  var item=this.data.cx_prom_group[index];

		  var prom_id = item.prom_id;
		  var prom_type = item.prom_type;
		  var url='';
		  switch (parseInt(prom_type)){
			  case 3:
				  url = "/pages/goods/goodsList/goodsList?prom_type=3&prom_id=" + prom_id;
				  break;
			  case 5:
				  url = "/packageA/pages/prom_list/prom_list?goods_id=" + item.main_gid;
				  var room_id = getApp().globalData.room_id;
				  if (room_id && this.data.gid == getApp().globalData.room_goods_id) {
					  url += "&room_id=" + room_id;
				  }
				  break;
			  case 7:
				  url="/packageB/pages/zuhegou/index/index?id=" + prom_id
				  break;
			  case 10:
				  url="/pages/goods/goodsList/goodsList?ladder_id=" + prom_id;
				  break;
		  }
		  getApp().goto(url);
	  },

	  //-- 选择活动 --
	  sele_act:function (e){
		  var index=e.currentTarget.dataset.index;
		  var cx_prom_group=this.data.cx_prom_group;
		  for (var idx=0;idx<cx_prom_group.length;idx++){
              if(idx!=index) cx_prom_group[idx].sele=0;
			  else cx_prom_group[idx].sele=1;
		  }
		  this.setData({cx_prom_group})
	  }

  }
})