You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 lines
1.2 KiB

import _extends from "@babel/runtime/helpers/esm/extends";
import { createNamespace } from '../../utils';
var _createNamespace = createNamespace('sku-row-prop-item'),
createComponent = _createNamespace[0];
export default createComponent({
props: {
skuValue: Object,
skuKeyStr: String,
skuEventBus: Object,
selectedProp: Object,
multiple: Boolean
},
computed: {
choosed: function choosed() {
var selectedProp = this.selectedProp,
skuKeyStr = this.skuKeyStr,
skuValue = this.skuValue;
if (selectedProp && selectedProp[skuKeyStr]) {
return selectedProp[skuKeyStr].indexOf(skuValue.id) > -1;
}
return false;
}
},
methods: {
onSelect: function onSelect() {
this.skuEventBus.$emit('sku:propSelect', _extends({}, this.skuValue, {
skuKeyStr: this.skuKeyStr,
multiple: this.multiple
}));
}
},
render: function render() {
var h = arguments[0];
return h("span", {
"class": ['van-sku-row__item', {
'van-sku-row__item--active': this.choosed
}],
"on": {
"click": this.onSelect
}
}, [h("span", {
"class": "van-sku-row__item-name"
}, [this.skuValue.name])]);
}
});