sh-view 2.5.4 → 2.5.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sh-view",
3
- "version": "2.5.4",
3
+ "version": "2.5.6",
4
4
  "description": "基于vxe-table二次封装",
5
5
  "main": "packages/index.js",
6
6
  "scripts": {
@@ -29,7 +29,7 @@
29
29
  "jszip": "^3.10.1",
30
30
  "popper.js": "^1.16.1",
31
31
  "resize-observer-polyfill": "^1.5.1",
32
- "sh-tools": "^2.1.4",
32
+ "sh-tools": "^2.1.5",
33
33
  "tinymce": "^5.10.5",
34
34
  "vue": "^3.3.4",
35
35
  "vue-masonry": "^0.16.0",
@@ -63,15 +63,8 @@ export default function (props, context, proxy, isForm) {
63
63
  }
64
64
  // 表单项编辑回调
65
65
  const onFormEditClosed = async (obj, renderbox) => {
66
- let { property, data } = obj
67
- if (props.valid && formRules.value[property]) {
68
- let valerr = await formRef.value.validateField(property)
69
- if (!valerr) {
70
- formRef.value.clearValidate(property)
71
- }
72
- }
73
66
  emit('edit-closed', obj, renderbox)
74
- Object.assign(props.data, data)
67
+ Object.assign(props.data, obj.data)
75
68
  }
76
69
  // 表单校验不通过
77
70
  const onFormSubmitInvalid = params => {
@@ -71,12 +71,9 @@ export default function (props, context, proxy, isGrid) {
71
71
  const tableViewData = computed(() => tableFilterData.value || props.dataSourse)
72
72
  const tablePrevColumns = computed(() => {
73
73
  let prevColumns = []
74
- let prevFields = ['seq', 'selectType']
75
- prevFields.forEach(prev => {
76
- if (tableGlobalConfig.value[prev]) {
77
- prevColumns.push(columnsMapDefault[prev])
78
- }
79
- })
74
+ const { seq, selectType } = tableGlobalConfig.value
75
+ if (seq) prevColumns.push(columnsMapDefault.seq)
76
+ if (selectType) prevColumns.push(columnsMapDefault[selectType])
80
77
  return prevColumns
81
78
  })
82
79
  const tableColumns = computed(() => {
@@ -155,7 +152,8 @@ export default function (props, context, proxy, isGrid) {
155
152
  return selectionRows.value || []
156
153
  }
157
154
  // 获取全部数据
158
- const getFullData = () => {
155
+ // visible为true获取视图数据
156
+ const getFullData = ({ visible }) => {
159
157
  let data = $vUtils.clone(tableRef.value.getTableData().fullData, true)
160
158
  const columns = tableRef.value.getColumns()
161
159
  let rnameColumns = columns.filter(col => col.rname)
@@ -165,7 +163,7 @@ export default function (props, context, proxy, isGrid) {
165
163
  let cellValue = $vUtils.get(row, property)
166
164
  if (!$vUtils.isNone(cellValue)) {
167
165
  let { rvalue, rtext } = $vUtils.formatRender(cellValue, property, row, rname, rprops, proxy)
168
- $vUtils.set(row, property, ['$vMoney'].includes(rname) ? rtext : rvalue)
166
+ $vUtils.set(row, property, visible || ['$vMoney'].includes(rname) ? rtext : rvalue)
169
167
  }
170
168
  })
171
169
  })
@@ -261,7 +259,13 @@ export default function (props, context, proxy, isGrid) {
261
259
  }
262
260
  // 只对 edit-config 配置时有效,单元格编辑状态下被关闭时会触发该事件
263
261
  const onEditClosed = params => {
264
- // 此操作火狐浏览器(bug(vxe):编辑后不触发渲染器的blur问题)待后续修复,目前没有啥好办法
262
+ // 此操作火狐浏览器(bug(vxe):编辑后不触发渲染器的blur问题)
263
+ let { row, column } = params
264
+ let editModel = $vUtils.get(column, 'params.__RowEditModelValue')
265
+ if (editModel !== undefined) {
266
+ $vUtils.set(row, column.property, editModel)
267
+ delete column.params.__RowEditModelValue
268
+ }
265
269
  emit('edit-closed', params)
266
270
  }
267
271
  // 只对 edit-config 配置时有效,单元格被激活编辑时会触发该事件
@@ -391,13 +395,10 @@ export default function (props, context, proxy, isGrid) {
391
395
  searchFields.push({ rkey: col.property, rname: renderObj.name, rprops: Object.assign({}, renderObj.props, col.rprops) })
392
396
  }
393
397
  })
394
- filterData = $vUtils.searchTree(props.dataSourse, row => {
398
+ let fullVisibleData = getFullData({ visible: true })
399
+ filterData = $vUtils.searchTree(fullVisibleData, row => {
395
400
  return searchFields.some(item => {
396
401
  let cellValue = $vUtils.get(row, item.rkey)
397
- if ($vxePluginNames.expendRenders && $vxePluginNames.expendRenders.includes(item.rname)) {
398
- let { rtext } = $vUtils.formatRender(cellValue, item.rkey, row, item.rname, item.rprops, proxy)
399
- return String(rtext).toLowerCase().indexOf(filterText) > -1
400
- }
401
402
  return $vUtils.trim(cellValue).toLowerCase().indexOf(filterText) > -1
402
403
  })
403
404
  })
@@ -53,7 +53,12 @@ export default function (props, context, proxy) {
53
53
  }
54
54
 
55
55
  // 输入框变化
56
- const vxeInputChange = async ({ value, $event }) => {}
56
+ const vxeInputChange = async ({ value, $event }) => {
57
+ // 此操作火狐浏览器(bug(vxe):编辑后不触发渲染器的blur问题)触发edit-closed,故在edit-close重新赋值
58
+ if (!rform.value) {
59
+ $vUtils.set(props.rparams.column, 'params.__RowEditModelValue', value)
60
+ }
61
+ }
57
62
  // 输入框变化回调
58
63
  const vxeChangeCallBack = async ({ value, $event }) => {
59
64
  setRenderValue(value)