Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Table] 取消rowKey 字段默认值为id,应该用一个内置唯一标识机制代替默认id值 #4751

Open
Alsmile opened this issue Nov 19, 2024 · 8 comments
Labels
💭 discussion we are discussing

Comments

@Alsmile
Copy link

Alsmile commented Nov 19, 2024

tdesign-vue-next 版本

1.10.3

期望结果

[Table] rowKey 字段应该用一个内置唯一标识机制代替默认id值
因为业务经常很多数据没有id,并且很多情况没有一个列可以作为唯一字段。非要让用户自己临时搞一个唯一字段,不是增加用户心智负担吗。

用户没有配置时,自己内置一个临时唯一字段例如:__id不复杂吧。在应用侧重复做类似事情多了,心累

心智负担多了,下个项目可能就用其他觉得更好的可以的代替轮子了

Copy link
Contributor

👋 @Alsmile,感谢给 TDesign 提出了 issue。
请根据 issue 模版确保背景信息的完善,我们将调查并尽快回复你。

@uyarn uyarn added the 💭 discussion we are discussing label Nov 19, 2024
@uyarn
Copy link
Collaborator

uyarn commented Nov 19, 2024

之前其实有同学建议增加函数方法可以支持多个字段组合的 我们再讨论下

@Alsmile
Copy link
Author

Alsmile commented Nov 19, 2024

之前其实有同学建议增加函数方法可以支持多个字段组合的 我们再讨论下

如果我使用excel一定必须要多个字段组合唯一吗

@chaishi
Copy link
Collaborator

chaishi commented Nov 19, 2024

id 是一个一直要删掉,而没删掉的内置,本来就要取消的

@chaishi
Copy link
Collaborator

chaishi commented Nov 19, 2024

频繁的 rowKey 计算也是非必要的计算量,
如果组件内部要加,只能在传入 data 数据的地方做一层拦截,先计算完成唯一标识,再继续进入后续渲染。

@chaishi
Copy link
Collaborator

chaishi commented Nov 19, 2024

还有一个点,如果是内置唯一标识:删掉 id,使用 __id 也有风险,那些没传 rowKey 的业务需要注意,这会是一个 BreakingChange

@chaishi
Copy link
Collaborator

chaishi commented Nov 19, 2024

有些业务,一般会封装一些独立的业务组件,如:表格、表单,实现一些业务上通用的功能,
如此,很多功能便都只需要开发一次,不需要重复。
在这个功能支持之前,可以先尝试一下。

@Alsmile
Copy link
Author

Alsmile commented Nov 22, 2024

还有一个点,如果是内置唯一标识:删掉 id,使用 __id 也有风险,那些没传 rowKey 的业务需要注意,这会是一个 BreakingChange

我是想说,很多普通table场景,用户不在意唯一标识。如果从程序角度确实需要唯一标识的,有一个缺省内部机制,不抛给应用者,体验会更好

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
💭 discussion we are discussing
Projects
None yet
Development

No branches or pull requests

3 participants