UNPKG

captain-ui

Version:

有赞vue wap业务组件库

116 lines (110 loc) 3.26 kB
import _extends from "@babel/runtime/helpers/esm/extends"; import "vant/es/action-sheet/style"; import _ActionSheet from "vant/es/action-sheet"; import "vant/es/cell-group/style"; import _CellGroup from "vant/es/cell-group"; import "vant/es/icon/style"; import _Icon from "vant/es/icon"; var _components; import fullfillImage from '@youzan/utils/fullfillImage'; import Card from './Card'; export default { render: function render() { var _vm = this; var _h = _vm.$createElement; var _c = _vm._self._c || _h; return _c('div', [_c('div', { staticClass: "cap-invalid-goods", on: { "click": function click($event) { _vm.showDetail = true; } } }, [_c('h3', { staticClass: "cap-invalid-goods__title" }, [_vm._v(_vm._s(_vm.title))]), _c('van-cell-group', { staticClass: "cap-invalid-goods__container" }, [_c('div', { staticClass: "cap-invalid-goods__gallery" }, _vm._l(_vm.formattedGoods, function (item) { return _c('div', { key: item.sku_id, staticClass: "cap-invalid-goods__thumb" }, [_c('img', { attrs: { "src": item.url } }), item.is_present || item.present ? _c('span', { staticClass: "cap-invalid-goods-card__present" }) : _vm._e()]); }), 0), _c('div', { staticClass: "cap-invalid-goods__count" }, [_c('span', [_vm._v("共" + _vm._s(_vm.formattedGoods.length) + "件")]), _c('van-icon', { attrs: { "name": "arrow" } })], 1)])], 1), _c('van-action-sheet', { attrs: { "title": _vm.actionsheetTitle }, model: { value: _vm.showDetail, callback: function callback($$v) { _vm.showDetail = $$v; }, expression: "showDetail" } }, [_c('div', { staticClass: "cap-invalid-goods__list" }, _vm._l(_vm.formattedGoods, function (item) { return _c('cap-invalid-goods-card', { key: item.sku_id, attrs: { "item": item } }); }), 1)])], 1); }, name: 'cap-invalid-goods', components: (_components = {}, _components[Card.name] = Card, _components[_Icon.name] = _Icon, _components[_CellGroup.name] = _CellGroup, _components[_ActionSheet.name] = _ActionSheet, _components), props: { data: { type: Array, required: true }, title: { type: String, default: '以下商品无法一起购买,点击查看原因' }, actionsheetTitle: { type: String, default: '以下商品无法一起下单' } }, data: function data() { return { showDetail: false }; }, computed: { formattedGoods: function formattedGoods() { var _this = this; return this.data.map(function (item) { return _extends({}, item, { url: fullfillImage(item.img_url, '!180x180.jpg'), price: parseFloat(item.price / 100, 10).toFixed(2), sku: _this.getSkuStr(item.sku) }); }); } }, methods: { getSkuStr: function getSkuStr(arr) { return Array.isArray(arr) ? arr.filter(function (item) { return item.v; }).map(function (item) { return item.v; }).join(', ') : ''; } } };