Comments (7)
如果label强制要求是string类型的,使用数字类型应该报warning进行提示 这里的数字类型1是可以显示的,数字类型为0显示不了,是一个非常明显的问题 真正能暴露使用问题的方式是进行warning提示,而不是使用者使用同一类型的数据的时候显示出与其他数据不同的行为 这很容易导致难以预料的业务问题
首先数字的输入是 ub(unspecified behavior),其次如果你使用的是现代化的编辑起在类型上便会对类型进行检查,并不会遗留问题到生产环境再被发现。
如果你确实觉得组件库需要来对这些 ub 做防御型编程可以提出一个 feature request,关于如何对于 falsy(undefined,null,0,false) 的各种特殊情况下对于数据输入的转化逻辑,这可以被讨论应该如何防御,而且这对于整个系统来说都是有益的。
from tdesign-react.
👋 @suedar,感谢给 TDesign 提出了 issue。
请根据 issue 模版确保背景信息的完善,我们将调查并尽快回复你。
from tdesign-react.
from tdesign-react.
不能这样单纯的处理,有的options是依赖后端返回的,这样很容易出现业务问题,至少应该兼容一下。。。
from tdesign-react.
options={options.map(i => ({ label: i.label || '无', ...i }))}
from tdesign-react.
不能假定在使用的用户需要的就是什么,可能是需要隐藏,可能是需要展示文案(文案也是不确定的),万一有的依赖就是不展示呢(可能性比较小)
基于以上的观点,如果我兼容了,问题就不会暴露出来,可能作为一种默认行为被继续使用
其次如果你需要对于 falsy 的特殊兼容支持,这可能是一个比较大的需求,对于单一职责的原子组件来说引入过多复杂度对于组件的维护并不是一件好事
最后由业务向后端要求数据格式的准确性,也是后端应该做到的
所以说约定了 string 的情况下,对于 only string 的支持也是一种合理的措施
from tdesign-react.
如果label强制要求是string类型的,使用数字类型应该报warning进行提示
这里的数字类型1是可以显示的,数字类型为0显示不了,是一个非常明显的问题
真正能暴露使用问题的方式是进行warning提示,而不是使用者使用同一类型的数据的时候显示出与其他数据不同的行为
这很容易导致难以预料的业务问题
from tdesign-react.
Related Issues (20)
- [form] form 表单如何在自定义组件里面,获取errormessage, 希望有一个getFieldErrorMsg的功能 HOT 1
- [Table] 虚拟滚动表格滚动到指定行,滚动的位置有偏移 HOT 4
- [HeadMenu] 横版菜单栏在next dev显示正常,但在next start时子菜单会偏移 HOT 2
- [TreeSelect] 自定义keys透传给treeProps HOT 2
- [Upload] 当theme:image, draggable:true, uploadFilePercent无效 HOT 4
- [Select] reserveKeyword filterable multiple 属性时,列表搜索功能不符合预期 HOT 2
- [Tree] React 18.3 已弃用 findDOMNode HOT 2
- [textarea] textarea组件,不支持onCompositionend,中文会频繁触发onchange HOT 1
- [Cascader] checkStrictly模式下过滤,没有展示非叶子节点 HOT 1
- [InputNumber] allowInputOverLimit 开关导致 -Infinity 显示异常 HOT 1
- [Input] 希望能支持自定义字符统计 HOT 1
- [Chheckbox] Checkbox.Group 受控后,onChange 的回调值不对 HOT 2
- [Table]设置了resizable后,鼠标右键单击拖拽边框会一直显示 HOT 1
- [Form.FormList] 嵌套使用时,在有默认值的情况下,更改后无法更新对应字段的值 HOT 1
- [Form.FormItem] shouldUpdate无限触发 HOT 1
- [Transfer] 穿梭框与Tree一起使用有许多问题 HOT 1
- guide组件在初次定位后,改变窗口大小,不会跟随 HOT 1
- [Guide] resize之后位置偏移 HOT 1
- [全局特性配置] 自定义类前缀, 在根目录ConfigProvider包括后, 子组件如果重新 ReactDOM.render, 则无法共享ConfigProvider配置 HOT 3
- [form] form-item 支持tooltip HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tdesign-react.