This commit is contained in:
xuliangzhan
2019-06-02 17:02:01 +08:00
parent 6e09710652
commit e974a84cfb
11 changed files with 80 additions and 79 deletions

View File

@@ -1 +1 @@
<!DOCTYPE html><html lang=en><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1"><link rel=icon href=/vxe-table/favicon.ico><title>vxe-table 表格</title><link href=/vxe-table/static/css/chunk-vendors.595f1fdb.css rel=preload as=style><link href=/vxe-table/static/css/index.efacb5b2.css rel=preload as=style><link href=/vxe-table/static/js/chunk-vendors.de52331a.js rel=preload as=script><link href=/vxe-table/static/js/index.f6ae3334.js rel=preload as=script><link href=/vxe-table/static/css/chunk-vendors.595f1fdb.css rel=stylesheet><link href=/vxe-table/static/css/index.efacb5b2.css rel=stylesheet></head><body><noscript><strong>We're sorry but vxe-table doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id=app></div><script src=/vxe-table/static/js/chunk-vendors.de52331a.js></script><script src=/vxe-table/static/js/index.f6ae3334.js></script></body></html>
<!DOCTYPE html><html lang=en><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1"><link rel=icon href=/vxe-table/favicon.ico><title>vxe-table 表格</title><link href=/vxe-table/static/css/chunk-vendors.595f1fdb.css rel=preload as=style><link href=/vxe-table/static/css/index.efacb5b2.css rel=preload as=style><link href=/vxe-table/static/js/chunk-vendors.de52331a.js rel=preload as=script><link href=/vxe-table/static/js/index.b60b7cbb.js rel=preload as=script><link href=/vxe-table/static/css/chunk-vendors.595f1fdb.css rel=stylesheet><link href=/vxe-table/static/css/index.efacb5b2.css rel=stylesheet></head><body><noscript><strong>We're sorry but vxe-table doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id=app></div><script src=/vxe-table/static/js/chunk-vendors.de52331a.js></script><script src=/vxe-table/static/js/index.b60b7cbb.js></script></body></html>

File diff suppressed because one or more lines are too long

View File

@@ -5940,7 +5940,8 @@ var GlobalConfig = {
rHeight: 0
}
},
tooltipConfig: {// theme: 'dark'
tooltipConfig: {
theme: 'dark'
},
iconMap: {
sortAsc: 'vxe-sort--asc-icon',
@@ -6583,9 +6584,9 @@ function syncBodyScroll(scrollTop, elem1, elem2) {
scrollXHeight = $table.scrollXHeight,
scrollXLoad = $table.scrollXLoad,
scrollXStore = $table.scrollXStore,
optimizeConfig = $table.optimizeConfig,
optimizeOpts = $table.optimizeOpts,
getColumnMapIndex = $table.getColumnMapIndex;
var overflow = optimizeConfig.overflow; // 如果是使用优化模式
var overflow = optimizeOpts.overflow; // 如果是使用优化模式
if (fixedType && overflow) {
tableColumn = fixedColumn;
@@ -7042,12 +7043,7 @@ var es6_number_constructor = __webpack_require__("c5f6");
// 多选配置项
selectConfig: Object,
// tooltip 配置项
tooltipConfig: {
type: Object,
default: function _default() {
return conf.tooltipConfig;
}
},
tooltipConfig: Object,
// 展开行配置项
expandConfig: Object,
// 树形结构配置项
@@ -7076,12 +7072,12 @@ var es6_number_constructor = __webpack_require__("c5f6");
/* harmony default export */ var filter = ({
props: {
filterStore: Object,
optimizeConfig: Object
optimizeOpts: Object
},
render: function render(h) {
var $table = this.$parent;
var filterStore = this.filterStore,
optimizeConfig = this.optimizeConfig,
optimizeOpts = this.optimizeOpts,
filterCheckAllEvent = this.filterCheckAllEvent,
filterOptionRadioEvent = this.filterOptionRadioEvent,
filterOptionCheckEvent = this.filterOptionCheckEvent;
@@ -7153,7 +7149,7 @@ var es6_number_constructor = __webpack_require__("c5f6");
});
return h('div', {
class: ['vxe-table--filter-wrapper', {
't--animat': optimizeConfig.animat,
't--animat': optimizeOpts.animat,
'filter--active': filterStore.visible
}],
style: filterStore.style
@@ -8291,9 +8287,12 @@ function renderFixed(h, $table, fixedType) {
return this.size || this.$parent.size || this.$parent.vSize;
},
// 优化的参数
optimizeConfig: function optimizeConfig() {
optimizeOpts: function optimizeOpts() {
return assign_default()({}, conf.optimization, this.optimization);
},
tooltipOpts: function tooltipOpts() {
return assign_default()({}, conf.tooltipConfig, this.tooltipConfig);
},
// 是否使用了分组表头
isGroup: function isGroup() {
return this.collectColumn.some(function (column) {
@@ -8374,10 +8373,10 @@ function renderFixed(h, $table, fixedType) {
var _this = this;
var scrollYStore = this.scrollYStore,
optimizeConfig = this.optimizeConfig,
optimizeOpts = this.optimizeOpts,
treeConfig = this.treeConfig,
editConfig = this.editConfig;
var scrollY = optimizeConfig.scrollY;
var scrollY = optimizeOpts.scrollY;
if (scrollY) {
assign_default()(scrollYStore, {
@@ -8463,14 +8462,14 @@ function renderFixed(h, $table, fixedType) {
stripe = this.stripe,
highlightHoverRow = this.highlightHoverRow,
vSize = this.vSize,
tooltipConfig = this.tooltipConfig,
tooltipOpts = this.tooltipOpts,
editConfig = this.editConfig,
showFooter = this.showFooter,
footerMethod = this.footerMethod,
overflowX = this.overflowX,
overflowY = this.overflowY,
scrollXHeight = this.scrollXHeight,
optimizeConfig = this.optimizeConfig,
optimizeOpts = this.optimizeOpts,
columnStore = this.columnStore,
filterStore = this.filterStore,
ctxMenuStore = this.ctxMenuStore,
@@ -8488,7 +8487,7 @@ function renderFixed(h, $table, fixedType) {
'scroll--x': overflowX,
'fixed--left': leftList.length,
'fixed--right': rightList.length,
't--animat': optimizeConfig.animat,
't--animat': optimizeOpts.animat,
't--stripe': stripe,
't--border': border,
't--highlight': highlightHoverRow
@@ -8579,7 +8578,7 @@ function renderFixed(h, $table, fixedType) {
*/
isFilter ? h('table-filter', {
props: {
optimizeConfig: optimizeConfig,
optimizeOpts: optimizeOpts,
filterStore: filterStore
},
ref: 'filterWrapper'
@@ -8597,7 +8596,7 @@ function renderFixed(h, $table, fixedType) {
* tooltip
*/
tooltipStore.visible ? h('div', {
class: ['vxe-table--tooltip-wrapper', "theme--".concat(tooltipConfig ? tooltipConfig.theme : 'dark'), "placement--".concat(tooltipStore.placement)],
class: ['vxe-table--tooltip-wrapper', "theme--".concat(tooltipOpts.theme), "placement--".concat(tooltipStore.placement)],
style: tooltipStore.style,
ref: 'tipWrapper'
}, [h('div', {
@@ -8655,9 +8654,9 @@ function renderFixed(h, $table, fixedType) {
maxHeight = this.maxHeight,
autoWidth = this.autoWidth,
editStore = this.editStore,
optimizeConfig = this.optimizeConfig,
optimizeOpts = this.optimizeOpts,
recalculate = this.recalculate;
var scrollY = optimizeConfig.scrollY;
var scrollY = optimizeOpts.scrollY;
var tableFullData = datas || [];
var scrollYLoad = scrollY && scrollY.gt && scrollY.gt < tableFullData.length;
editStore.insertList = [];
@@ -9246,8 +9245,8 @@ function renderFixed(h, $table, fixedType) {
isGroup = this.isGroup,
columnStore = this.columnStore,
scrollXStore = this.scrollXStore,
optimizeConfig = this.optimizeConfig;
var scrollX = optimizeConfig.scrollX; // 如果是分组表头,如果子列全部被隐藏,则根列也隐藏
optimizeOpts = this.optimizeOpts;
var scrollX = optimizeOpts.scrollX; // 如果是分组表头,如果子列全部被隐藏,则根列也隐藏
if (isGroup) {
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(collectColumn, function (column) {
@@ -11524,9 +11523,9 @@ function renderFixed(h, $table, fixedType) {
scrollYStore = this.scrollYStore,
scrollXStore = this.scrollXStore,
visibleColumn = this.visibleColumn,
optimizeConfig = this.optimizeConfig;
var scrollX = optimizeConfig.scrollX,
scrollY = optimizeConfig.scrollY;
optimizeOpts = this.optimizeOpts;
var scrollX = optimizeOpts.scrollX,
scrollY = optimizeOpts.scrollY;
var tableBody = this.$refs.tableBody;
var tableBodyElem = tableBody ? tableBody.$el : null;
var tableHeader = this.$refs.tableHeader;

View File

@@ -5949,7 +5949,8 @@ var GlobalConfig = {
rHeight: 0
}
},
tooltipConfig: {// theme: 'dark'
tooltipConfig: {
theme: 'dark'
},
iconMap: {
sortAsc: 'vxe-sort--asc-icon',
@@ -6592,9 +6593,9 @@ function syncBodyScroll(scrollTop, elem1, elem2) {
scrollXHeight = $table.scrollXHeight,
scrollXLoad = $table.scrollXLoad,
scrollXStore = $table.scrollXStore,
optimizeConfig = $table.optimizeConfig,
optimizeOpts = $table.optimizeOpts,
getColumnMapIndex = $table.getColumnMapIndex;
var overflow = optimizeConfig.overflow; // 如果是使用优化模式
var overflow = optimizeOpts.overflow; // 如果是使用优化模式
if (fixedType && overflow) {
tableColumn = fixedColumn;
@@ -7051,12 +7052,7 @@ var es6_number_constructor = __webpack_require__("c5f6");
// 多选配置项
selectConfig: Object,
// tooltip 配置项
tooltipConfig: {
type: Object,
default: function _default() {
return conf.tooltipConfig;
}
},
tooltipConfig: Object,
// 展开行配置项
expandConfig: Object,
// 树形结构配置项
@@ -7085,12 +7081,12 @@ var es6_number_constructor = __webpack_require__("c5f6");
/* harmony default export */ var filter = ({
props: {
filterStore: Object,
optimizeConfig: Object
optimizeOpts: Object
},
render: function render(h) {
var $table = this.$parent;
var filterStore = this.filterStore,
optimizeConfig = this.optimizeConfig,
optimizeOpts = this.optimizeOpts,
filterCheckAllEvent = this.filterCheckAllEvent,
filterOptionRadioEvent = this.filterOptionRadioEvent,
filterOptionCheckEvent = this.filterOptionCheckEvent;
@@ -7162,7 +7158,7 @@ var es6_number_constructor = __webpack_require__("c5f6");
});
return h('div', {
class: ['vxe-table--filter-wrapper', {
't--animat': optimizeConfig.animat,
't--animat': optimizeOpts.animat,
'filter--active': filterStore.visible
}],
style: filterStore.style
@@ -8300,9 +8296,12 @@ function renderFixed(h, $table, fixedType) {
return this.size || this.$parent.size || this.$parent.vSize;
},
// 优化的参数
optimizeConfig: function optimizeConfig() {
optimizeOpts: function optimizeOpts() {
return assign_default()({}, conf.optimization, this.optimization);
},
tooltipOpts: function tooltipOpts() {
return assign_default()({}, conf.tooltipConfig, this.tooltipConfig);
},
// 是否使用了分组表头
isGroup: function isGroup() {
return this.collectColumn.some(function (column) {
@@ -8383,10 +8382,10 @@ function renderFixed(h, $table, fixedType) {
var _this = this;
var scrollYStore = this.scrollYStore,
optimizeConfig = this.optimizeConfig,
optimizeOpts = this.optimizeOpts,
treeConfig = this.treeConfig,
editConfig = this.editConfig;
var scrollY = optimizeConfig.scrollY;
var scrollY = optimizeOpts.scrollY;
if (scrollY) {
assign_default()(scrollYStore, {
@@ -8472,14 +8471,14 @@ function renderFixed(h, $table, fixedType) {
stripe = this.stripe,
highlightHoverRow = this.highlightHoverRow,
vSize = this.vSize,
tooltipConfig = this.tooltipConfig,
tooltipOpts = this.tooltipOpts,
editConfig = this.editConfig,
showFooter = this.showFooter,
footerMethod = this.footerMethod,
overflowX = this.overflowX,
overflowY = this.overflowY,
scrollXHeight = this.scrollXHeight,
optimizeConfig = this.optimizeConfig,
optimizeOpts = this.optimizeOpts,
columnStore = this.columnStore,
filterStore = this.filterStore,
ctxMenuStore = this.ctxMenuStore,
@@ -8497,7 +8496,7 @@ function renderFixed(h, $table, fixedType) {
'scroll--x': overflowX,
'fixed--left': leftList.length,
'fixed--right': rightList.length,
't--animat': optimizeConfig.animat,
't--animat': optimizeOpts.animat,
't--stripe': stripe,
't--border': border,
't--highlight': highlightHoverRow
@@ -8588,7 +8587,7 @@ function renderFixed(h, $table, fixedType) {
*/
isFilter ? h('table-filter', {
props: {
optimizeConfig: optimizeConfig,
optimizeOpts: optimizeOpts,
filterStore: filterStore
},
ref: 'filterWrapper'
@@ -8606,7 +8605,7 @@ function renderFixed(h, $table, fixedType) {
* tooltip
*/
tooltipStore.visible ? h('div', {
class: ['vxe-table--tooltip-wrapper', "theme--".concat(tooltipConfig ? tooltipConfig.theme : 'dark'), "placement--".concat(tooltipStore.placement)],
class: ['vxe-table--tooltip-wrapper', "theme--".concat(tooltipOpts.theme), "placement--".concat(tooltipStore.placement)],
style: tooltipStore.style,
ref: 'tipWrapper'
}, [h('div', {
@@ -8664,9 +8663,9 @@ function renderFixed(h, $table, fixedType) {
maxHeight = this.maxHeight,
autoWidth = this.autoWidth,
editStore = this.editStore,
optimizeConfig = this.optimizeConfig,
optimizeOpts = this.optimizeOpts,
recalculate = this.recalculate;
var scrollY = optimizeConfig.scrollY;
var scrollY = optimizeOpts.scrollY;
var tableFullData = datas || [];
var scrollYLoad = scrollY && scrollY.gt && scrollY.gt < tableFullData.length;
editStore.insertList = [];
@@ -9255,8 +9254,8 @@ function renderFixed(h, $table, fixedType) {
isGroup = this.isGroup,
columnStore = this.columnStore,
scrollXStore = this.scrollXStore,
optimizeConfig = this.optimizeConfig;
var scrollX = optimizeConfig.scrollX; // 如果是分组表头,如果子列全部被隐藏,则根列也隐藏
optimizeOpts = this.optimizeOpts;
var scrollX = optimizeOpts.scrollX; // 如果是分组表头,如果子列全部被隐藏,则根列也隐藏
if (isGroup) {
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(collectColumn, function (column) {
@@ -11533,9 +11532,9 @@ function renderFixed(h, $table, fixedType) {
scrollYStore = this.scrollYStore,
scrollXStore = this.scrollXStore,
visibleColumn = this.visibleColumn,
optimizeConfig = this.optimizeConfig;
var scrollX = optimizeConfig.scrollX,
scrollY = optimizeConfig.scrollY;
optimizeOpts = this.optimizeOpts;
var scrollX = optimizeOpts.scrollX,
scrollY = optimizeOpts.scrollY;
var tableBody = this.$refs.tableBody;
var tableBodyElem = tableBody ? tableBody.$el : null;
var tableHeader = this.$refs.tableHeader;

File diff suppressed because one or more lines are too long

View File

@@ -1,6 +1,6 @@
{
"name": "vxe-table",
"version": "1.0.0-beta.5",
"version": "1.0.0-beta.6",
"description": "A very powerful Vue table component.",
"scripts": {
"serve": "vue-cli-service serve",

View File

@@ -3,11 +3,11 @@ import GlobalConfig from '../../../conf'
export default {
props: {
filterStore: Object,
optimizeConfig: Object
optimizeOpts: Object
},
render (h) {
let $table = this.$parent
let { filterStore, optimizeConfig, filterCheckAllEvent, filterOptionRadioEvent, filterOptionCheckEvent } = this
let { filterStore, optimizeOpts, filterCheckAllEvent, filterOptionRadioEvent, filterOptionCheckEvent } = this
let { multiple } = filterStore
let filterRens = [
h('li', {
@@ -94,7 +94,7 @@ export default {
})
return h('div', {
class: ['vxe-table--filter-wrapper', {
't--animat': optimizeConfig.animat,
't--animat': optimizeOpts.animat,
'filter--active': filterStore.visible
}],
style: filterStore.style

View File

@@ -12,8 +12,8 @@ export default {
},
render (h) {
let { $parent: $table, fixedType, fixedColumn, tableColumn, footerData } = this
let { $listeners: tableListeners, footerRowClassName, footerCellClassName, tableWidth, scrollYWidth, scrollXHeight, scrollXLoad, scrollXStore, optimizeConfig, getColumnMapIndex } = $table
let { overflow } = optimizeConfig
let { $listeners: tableListeners, footerRowClassName, footerCellClassName, tableWidth, scrollYWidth, scrollXHeight, scrollXLoad, scrollXStore, optimizeOpts, getColumnMapIndex } = $table
let { overflow } = optimizeOpts
// 如果是使用优化模式
if (fixedType && overflow) {
tableColumn = fixedColumn

View File

@@ -61,7 +61,7 @@ export default {
// 多选配置项
selectConfig: Object,
// tooltip 配置项
tooltipConfig: { type: Object, default: () => GlobalConfig.tooltipConfig },
tooltipConfig: Object,
// 展开行配置项
expandConfig: Object,
// 树形结构配置项

View File

@@ -281,9 +281,12 @@ export default {
return this.size || this.$parent.size || this.$parent.vSize
},
// 优化的参数
optimizeConfig () {
optimizeOpts () {
return Object.assign({}, GlobalConfig.optimization, this.optimization)
},
tooltipOpts () {
return Object.assign({}, GlobalConfig.tooltipConfig, this.tooltipConfig)
},
// 是否使用了分组表头
isGroup () {
return this.collectColumn.some(column => UtilTools.hasChildrenList(column))
@@ -346,8 +349,8 @@ export default {
}
},
created () {
let { scrollYStore, optimizeConfig, treeConfig, editConfig } = this
let { scrollY } = optimizeConfig
let { scrollYStore, optimizeOpts, treeConfig, editConfig } = this
let { scrollY } = optimizeOpts
if (scrollY) {
Object.assign(scrollYStore, {
startIndex: 0,
@@ -424,14 +427,14 @@ export default {
stripe,
highlightHoverRow,
vSize,
tooltipConfig,
tooltipOpts,
editConfig,
showFooter,
footerMethod,
overflowX,
overflowY,
scrollXHeight,
optimizeConfig,
optimizeOpts,
columnStore,
filterStore,
ctxMenuStore,
@@ -449,7 +452,7 @@ export default {
'scroll--x': overflowX,
'fixed--left': leftList.length,
'fixed--right': rightList.length,
't--animat': optimizeConfig.animat,
't--animat': optimizeOpts.animat,
't--stripe': stripe,
't--border': border,
't--highlight': highlightHoverRow
@@ -543,7 +546,7 @@ export default {
*/
isFilter ? h('table-filter', {
props: {
optimizeConfig,
optimizeOpts,
filterStore
},
ref: 'filterWrapper'
@@ -561,7 +564,7 @@ export default {
* tooltip
*/
tooltipStore.visible ? h('div', {
class: ['vxe-table--tooltip-wrapper', `theme--${tooltipConfig ? tooltipConfig.theme : 'dark'}`, `placement--${tooltipStore.placement}`],
class: ['vxe-table--tooltip-wrapper', `theme--${tooltipOpts.theme}`, `placement--${tooltipStore.placement}`],
style: tooltipStore.style,
ref: 'tipWrapper'
}, [
@@ -622,8 +625,8 @@ export default {
this.clearTreeExpand()
},
loadData (datas, init) {
let { height, maxHeight, autoWidth, editStore, optimizeConfig, recalculate } = this
let { scrollY } = optimizeConfig
let { height, maxHeight, autoWidth, editStore, optimizeOpts, recalculate } = this
let { scrollY } = optimizeOpts
let tableFullData = datas || []
let scrollYLoad = scrollY && scrollY.gt && scrollY.gt < tableFullData.length
editStore.insertList = []
@@ -1032,8 +1035,8 @@ export default {
let rightIndex = 0
let centerList = []
let rightList = []
let { headerProps, collectColumn, tableFullColumn, isGroup, columnStore, scrollXStore, optimizeConfig } = this
let { scrollX } = optimizeConfig
let { headerProps, collectColumn, tableFullColumn, isGroup, columnStore, scrollXStore, optimizeOpts } = this
let { scrollX } = optimizeOpts
// 如果是分组表头,如果子列全部被隐藏,则根列也隐藏
if (isGroup) {
XEUtils.eachTree(collectColumn, column => {
@@ -2716,8 +2719,8 @@ export default {
}, DomTools.browse.msie ? 40 : 20, { leading: false, trailing: true }),
// 计算滚动渲染相关数据
computeScrollLoad () {
let { scrollXLoad, scrollYLoad, scrollYStore, scrollXStore, visibleColumn, optimizeConfig } = this
let { scrollX, scrollY } = optimizeConfig
let { scrollXLoad, scrollYLoad, scrollYStore, scrollXStore, visibleColumn, optimizeOpts } = this
let { scrollX, scrollY } = optimizeOpts
let tableBody = this.$refs.tableBody
let tableBodyElem = tableBody ? tableBody.$el : null
let tableHeader = this.$refs.tableHeader

View File

@@ -23,7 +23,7 @@ const GlobalConfig = {
}
},
tooltipConfig: {
// theme: 'dark'
theme: 'dark'
},
iconMap: {
sortAsc: 'vxe-sort--asc-icon',