x-extends / vxe-table

Vxe table 的表格组件
https://vxetable.cn
MIT License
7.66k stars 1.06k forks source link

可编辑自定义渲染器updateStatus方法的意义何在 #2647

Closed zyyyyyy456 closed 2 days ago

zyyyyyy456 commented 2 days ago

可复现的链接(包含复现链接与示例代码):

import VXETable from 'vxe-table'; import IconInput from '@/components/vxe-cell/IconInput.vue'; // 创建一个简单的超链接渲染 VXETable.renderer.add('IconInput', { autofocus: '.rd-custom-input', // 默认显示模板 renderEdit(renderOpts, params) { // let { row, column } = params; // let { events } = renderOpts; return ; }, // 可编辑显示模板 renderCell(renderOpts, params) { const { row, column } = params; return [{row[column.field]}]; //return sd }, });

问题描述与截图:

image 在你们提供的代码中有这样两行代码,在已经使用Vue.set强制更新数据和视图的情况下(事实上这里是否违反了单向数据流原则呢,在组件内部直接修改上级组件的值),还调用了updateStatus,这个更新的是什么数据? image 然后这是updateStatus函数的实现,可以看到在没有设置editRules的情况下,设置不允许调用后面的方法,这点在文档中并没有提及,然后关于setCellValue方法也只是对于原数据对象属性做了修改

期望的结果:

No response

操作系统:

window10

浏览器版本:

Microsoft Edge 版本 131.0.2903.51 (正式版本) (64 位)

vue 版本:

3.3.4

vxe-pc-ui 版本:

vxe-table 版本:

4.5.14(我查看了最新的代码实现,这部分和最新的是相同的)

是否使用当前最新版本?