UNPKG

ten-design-vue

Version:

ten-vue

158 lines (140 loc) 3.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var name = 'ten-table-column'; var _default = { name: name, inject: ['table'], props: { /** * 列的内置类型 * * @member selector | expand */ type: String, /** * type 为 select 时指定选择列类型 * * @member checkbox | radio */ selectType: { type: String, default: 'checkbox' }, /** * 表头显示的标题,支持同名slot自定义表头, * 支持传入函数,函数参数为createElement */ title: [String, Function], /** * 字符串类型支持path写法。 * 对应列内容的字段名, 支持default slot自定义渲染内容。 * 支持传入函数,函数参数为createElement。 */ render: [String, Function], /** * 列的唯一标识 */ columnKey: String, /** * 列的宽度 */ width: [String, Number], /** * 列的最小宽度 */ minWidth: [String, Number], /** * 列对齐方式 * @member left | center |right */ align: { type: String, validator: function validator(v) { return ['left', 'center', 'right'].indexOf(v) > -1; } }, /** * 列表头对齐方式 * @member left | center |right */ headerAlign: { type: String, validator: function validator(v) { return ['left', 'center', 'right'].indexOf(v) > -1; } }, /** * 列是否固定在左侧或者右侧 * * @member left | right */ fixed: { type: [Boolean, String], default: false, validator: function validator(v) { if (typeof v === 'boolean') return true; if (typeof v === 'string') { return ['left', 'right'].indexOf(v) > -1; } return false; } }, /** * 自定义排序规则,方法接收3个参数, * 启用远端排序可设置为true,并监听table sort事件 * (a, b, order) => {} */ sorter: { type: [Function, Boolean], default: false }, /** * 当前排序方式,受控属性 * * @member asc | desc | default */ order: { type: String, default: 'default', validator: function validator(v) { return ['asc', 'desc', 'default'].indexOf(v) > -1; } }, /** * 设置列合并 * (rowIndex, row, column) => {Number} */ colSpan: { type: Function }, /** * 设置行合并 * (rowIndex, row, column) => {Number} */ rowSpan: { type: Function }, /** * type="selector" 可用,设置表格行是否可选。 * (rowIndex, row) => {Boolean},函数参数为行号、行数据,返回一个布尔值 */ selectable: { type: Function }, /** * type="selector" 可用,禁用表头全选 */ disabledSelectAll: { type: Boolean, default: false } }, render: function render() { var h = arguments[0]; return h("div"); } }; exports.default = _default;