安装
npm i big-white-calendar --save
index.json 添加组件
{
"usingComponents": {
"calendar": "big-white-calendar/es/index",
"receive-modal": "big-white-calendar/es/receive-modal/index",
"sign-up-modal": "big-white-calendar/es/sign-up-modal/index"
}
}
axml 使用检签
<view a:if="{{data}}">
<calendar data="{{data}}" onCouponClick="onCouponClick" />
<receive-modal
visible="{{getVisible}}"
onClose="onGetSwitchModal"
currentCoupon="{{currentCoupon}}"
onButtonClick="onGetButtonClick"
/>
<sign-up-modal
visible="{{signUpVisible}}"
onClose="onSignUpSwitchModal"
onButtonClick="onSignUpClick"
/>
</view>
js
Page({
data: {
getVisible: false,
signUpVisible: false,
},
async onLoad() {
const data = await getListData();
this.setData({
data,
});
},
receive(item) {
if (true) {
this.setData({
signUpVisible: true,
});
} else {
this.setData({
getVisible: true,
currentCoupon: item,
});
}
},
onCouponClick(e) {
const { item } = e;
const { statue, coupon_type } = item;
console.log(e);
if (coupon_type === '8801') {
return;
}
if (coupon_type !== '6001') {
if (!statue) {
this.receive(item);
} else if (statue === '1001') {
}
return;
}
switch (statue) {
case '1001':
return;
case '1004':
this.receive(item);
return;
case '1005':
my.showToast({
type: 'none',
content: '活动未开启,请待开启',
});
return;
default:
break;
}
},
onGetSwitchModal() {
this.setData({
getVisible: !this.data.getVisible,
});
},
onGetButtonClick() {
console.log('使用点击');
},
onSignUpSwitchModal() {
this.setData({
signUpVisible: !this.data.signUpVisible,
});
},
onSignUpClick() {
console.log('注册点击');
},
});
ICoupon
interface ICoupon {
channel_id: number;
coupon_name: string;
coupon_type: string;
img: string;
param: number;
worth: number;
issue_start_time: string;
issue_end_time: string;
coupon_tap: string;
statue?: string;
coupon_status?: string;
coupon_status_text?: string;
stock_num?: number;
total_amount?: number;
use_start_time: string;
use_end_time: string;
coupon_tag: string;
}