captain-ui
Version:
有赞vue wap业务组件库
156 lines (143 loc) • 3.78 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.default = void 0;
require("vant/es/coupon-list/style");
var _couponList = _interopRequireDefault(require("vant/es/coupon-list"));
require("vant/es/coupon-cell/style");
var _couponCell = _interopRequireDefault(require("vant/es/coupon-cell"));
require("vant/es/popup/style");
var _popup = _interopRequireDefault(require("vant/es/popup"));
var _components;
var _default2 = {
render: function render() {
var _vm = this;
var _h = _vm.$createElement;
var _c = _vm._self._c || _h;
return _c('div', {
staticClass: "cap-order-coupon"
}, [_c('van-coupon-cell', {
attrs: {
"editable": _vm.editable,
"coupons": _vm.couponList,
"chosen-coupon": _vm.chosenCoupon
},
on: {
"click": function click($event) {
_vm.showPopup = _vm.editable;
}
}
}), _c('van-popup', {
staticClass: "cap-order-coupon__popup",
attrs: {
"position": "bottom"
},
model: {
value: _vm.showPopup,
callback: function callback($$v) {
_vm.showPopup = $$v;
},
expression: "showPopup"
}
}, [_c('van-coupon-list', {
attrs: {
"coupons": _vm.couponList,
"chosen-coupon": _vm.chosenCoupon,
"disabled-coupons": _vm.disabledCouponList,
"exchange-button-text": _vm.exchangeButtonText,
"exchange-button-disabled": _vm.exchangeButtonDisabled,
"close-button-text": _vm.closeButtonText,
"disabled-list-title": _vm.disabledListTitle,
"input-placeholder": _vm.inputPlaceholder,
"displayed-coupon-index": _vm.displayedCouponIndex,
"show-close-button": _vm.showCloseButton
},
on: {
"change": _vm.onChange,
"exchange": _vm.onExchange
}
})], 1)], 1);
},
name: 'cap-order-coupon',
components: (_components = {}, _components[_popup.default.name] = _popup.default, _components[_couponCell.default.name] = _couponCell.default, _components[_couponList.default.name] = _couponList.default, _components),
model: {
prop: 'chosenCoupon'
},
props: {
couponList: {
type: Array,
default: function _default() {
return [];
}
},
disabledCouponList: {
type: Array,
default: function _default() {
return [];
}
},
chosenCoupon: {
type: Number,
default: -1
},
editable: {
type: Boolean,
default: true
},
exchangeButtonText: {
type: String,
default: '兑换'
},
exchangeButtonDisabled: {
type: Boolean,
default: false
},
showCouponList: {
type: Boolean,
default: false
},
displayedCouponIndex: {
type: Number,
default: -1
},
closeButtonText: {
type: String,
default: '不使用优惠'
},
disabledListTitle: {
type: String,
default: '不可用优惠'
},
inputPlaceholder: {
type: String,
default: '请输入优惠码'
},
showCloseButton: {
type: Boolean,
default: true
}
},
data: function data() {
return {
showPopup: this.showCouponList
};
},
watch: {
showPopup: function showPopup(val) {
this.$emit(val ? 'show' : 'hide');
},
showCouponList: function showCouponList(val) {
this.showPopup = val;
}
},
methods: {
onChange: function onChange(chosen) {
this.showPopup = false;
this.$emit('change', chosen);
},
onExchange: function onExchange(code) {
this.$emit('exchange', code.replace(/\s/g, ''));
}
}
};
exports.default = _default2;