captain-ui
Version:
有赞vue wap业务组件库
71 lines (63 loc) • 1.68 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.default = void 0;
var _Goods = _interopRequireDefault(require("./Goods"));
var _components;
var _default = {
render: function render() {
var _vm = this;
var _h = _vm.$createElement;
var _c = _vm._self._c || _h;
return _c('div', {
staticClass: "cap-taglist__group",
style: _vm.style
}, [_c('keep-alive', [_vm.visible ? _c('cap-taglist-goods', _vm._b({
on: {
"click": _vm.onClickGoods
}
}, 'cap-taglist-goods', _vm.$props, false)) : _vm._e()], 1)], 1);
},
name: 'cap-taglist-group',
components: (_components = {}, _components[_Goods.default.name] = _Goods.default, _components),
props: {
goodsList: Array,
tag: Object,
height: Number,
loadingGoods: Object,
isThumbCover: Boolean
},
data: function data() {
return {
visible: false,
firstTimeVisible: false
};
},
computed: {
style: function style() {
return {
height: this.height + 'px'
};
}
},
watch: {
visible: function visible(val) {
if (val && !this.firstTimeVisible) {
this.firstTimeVisible = true;
this.$emit('load', this.tag);
}
}
},
beforeCreate: function beforeCreate() {
this.$parent.groups.push(this);
},
beforeDestroy: function beforeDestroy() {
this.$parent.groups.splice(this.$parent.groups.indexOf(this), 1);
},
methods: {
onClickGoods: function onClickGoods(goods, tag, index) {
this.$emit('click', goods, tag, index);
}
}
};
exports.default = _default;