captain-ui
Version:
有赞vue wap业务组件库
93 lines (79 loc) • 2.74 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.default = void 0;
require("vant/es/loading/style");
var _loading = _interopRequireDefault(require("vant/es/loading"));
require("vant/es/button/style");
var _button = _interopRequireDefault(require("vant/es/button"));
require("vant/es/icon/style");
var _icon = _interopRequireDefault(require("vant/es/icon"));
var _components;
var BUTTON_TEXT_MAP = {
3: '马上抢',
4: '购买'
};
var _default = {
render: function render() {
var _vm = this;
var _h = _vm.$createElement;
var _c = _vm._self._c || _h;
return _c('div', {
staticClass: "cap-goods-list__buy-btn-wrapper",
class: [_vm.buttonTypeClass],
on: {
"click": function click($event) {
$event.stopPropagation();
$event.preventDefault();
_vm.$emit('click');
}
}
}, [_vm.isLoading && +_vm.buyButtonType !== 5 ? _c('div', {
staticClass: "cap-goods-list__buy-btn-loading"
}, [_c('van-loading')], 1) : +_vm.buyButtonType === 1 ? _c('div', {
staticClass: "cap-goods-list__buy-btn-1"
}, [_c('van-icon', {
attrs: {
"name": "shopping-cart"
}
})], 1) : +_vm.buyButtonType === 2 ? _c('van-icon', {
staticClass: "cap-goods-list__buy-btn-2",
attrs: {
"name": "add-o"
}
}) : +_vm.buyButtonType === 3 ? _c('van-button', {
staticClass: "cap-goods-list__buy-btn-3",
attrs: {
"size": "small",
"type": "danger"
}
}, [_vm._v("\n " + _vm._s(_vm.goodsButtonText) + "\n ")]) : +_vm.buyButtonType === 4 ? _c('van-button', {
staticClass: "cap-goods-list__buy-btn-4",
attrs: {
"size": "small"
}
}, [_vm._v("\n " + _vm._s(_vm.goodsButtonText) + "\n ")]) : +_vm.buyButtonType === 5 ? _c('van-button', {
staticClass: "cap-goods-list__buy-btn-5",
attrs: {
"type": "primary",
"square": "",
"size": "large"
}
}, [_vm._v("\n 我要抢购\n ")]) : _vm._e()], 1);
},
components: (_components = {}, _components[_icon.default.name] = _icon.default, _components[_button.default.name] = _button.default, _components[_loading.default.name] = _loading.default, _components),
props: {
buyButtonType: Number,
isLoading: Boolean,
buttonText: String
},
computed: {
buttonTypeClass: function buttonTypeClass() {
return "cap-goods-list__buy-btn-wrapper--" + this.buyButtonType;
},
goodsButtonText: function goodsButtonText() {
return this.buttonText ? this.buttonText : BUTTON_TEXT_MAP[this.buyButtonType];
}
}
};
exports.default = _default;