vhb-table
Version:
一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟列表、虚拟树、懒加载、快捷菜单、数据校验、树形结构、打印导出、表单渲染、数据分页、弹窗、自定义模板、渲染器、贼灵活的配置项、扩展接口等...
62 lines (56 loc) • 1.5 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _conf = _interopRequireDefault(require("../../v-h-b-table/src/conf"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var _default2 = {
name: 'VhbCheckboxGroup',
props: {
value: Array,
disabled: Boolean,
size: {
type: String,
default: function _default() {
return _conf.default.checkbox.size || _conf.default.size;
}
}
},
provide: function provide() {
return {
$xecheckboxgroup: this
};
},
computed: {
vSize: function vSize() {
return this.size || this.$parent.size || this.$parent.vSize;
}
},
render: function render(h) {
var $scopedSlots = this.$scopedSlots;
return h('div', {
class: 'vhb-checkbox-group'
}, $scopedSlots.default ? $scopedSlots.default.call(this, {}) : []);
},
methods: {
handleChecked: function handleChecked(params) {
var checked = params.checked,
label = params.label;
var checklist = this.value || [];
var checkIndex = checklist.indexOf(label);
if (checked) {
if (checkIndex === -1) {
checklist.push(label);
}
} else {
checklist.splice(checkIndex, 1);
}
this.$emit('input', checklist);
this.$emit('change', Object.assign({
checklist: checklist
}, params));
}
}
};
exports.default = _default2;