UNPKG

captain-ui

Version:

有赞vue wap业务组件库

157 lines (139 loc) 3.9 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; require("vant/es/icon/style"); var _icon = _interopRequireDefault(require("vant/es/icon")); require("vant/es/cell/style"); var _cell = _interopRequireDefault(require("vant/es/cell")); require("vant/es/cell-group/style"); var _cellGroup = _interopRequireDefault(require("vant/es/cell-group")); require("vant/es/radio/style"); var _radio = _interopRequireDefault(require("vant/es/radio")); require("vant/es/radio-group/style"); var _radioGroup = _interopRequireDefault(require("vant/es/radio-group")); var _default2 = { render: function render() { var _vm = this; var _h = _vm.$createElement; var _c = _vm._self._c || _h; return _c('div', { staticClass: "cap-address-list" }, [_c('van-radio-group', { staticClass: "cap-address-list__group scroller", model: { value: _vm.curValue, callback: function callback($$v) { _vm.curValue = $$v; }, expression: "curValue" } }, [_c('van-cell-group', _vm._l(_vm.addressList, function (item) { return _c('van-cell', { key: item.id }, [_c('van-radio', { attrs: { "name": item.id }, on: { "click": function click($event) { _vm.handleAddressItemClick(item); } } }, [_c('h4', { staticClass: "cap-address-list__username" }, [_vm._v("\n " + _vm._s(item.user_name) + ",\n " + _vm._s(item.tel) + "\n ")]), _c('p', { staticClass: "cap-address-list__address" }, [_vm._v("收货地址:" + _vm._s(_vm.computeAddressDetail(item)))])]), _c('van-icon', { staticClass: "cap-address-list__edit", attrs: { "name": "edit" }, on: { "click": function click($event) { _vm.handleAddEditClick(item); } } })], 1); }), 1)], 1), _c('a', { staticClass: "cap-address-list__add", attrs: { "href": "javascript:void(0)" }, on: { "click": function click($event) { _vm.handleAddEditClick(); } } }, [_c('van-icon', { attrs: { "name": "add" } }), _c('span', [_vm._v(_vm._s(_vm.addText))]), _c('van-icon', { attrs: { "name": "arrow" } })], 1)], 1); }, name: 'cap-address-list', components: { 'van-radio-group': _radioGroup.default, 'van-radio': _radio.default, 'van-cell-group': _cellGroup.default, 'van-cell': _cell.default, 'van-icon': _icon.default }, props: { value: [String, Boolean], addressList: { type: Array, default: function _default() { return []; } }, addText: String }, data: function data() { return { curValue: this.value }; }, watch: { value: function value(val) { this.curValue = val; }, curValue: function curValue(val) { this.$emit('input', val); } }, methods: { /** * 计算省市县字符串 * * @param {Object} item 地址项对象数据 */ computeAddressDetail: function computeAddressDetail(item) { if (!item) return; return item.province + item.city + item.county + item.address_detail; }, /** * 某一个地址点击 * * @param {Object} item 地址项对象数据 */ handleAddressItemClick: function handleAddressItemClick(item) { this.$emit('change', item); }, /** * 新增或编辑地址 * * @param {Object} item 地址项对象数据 */ handleAddEditClick: function handleAddEditClick(item) { this.$emit('edit', item || { address_detail: '' }); } } }; exports.default = _default2;