[Support] controller控制器接收的body参数,是否不能自动深度转换为自定义的复杂类的实例?还是需要一些配置才可以? #4219
-
Describe the problem(描述问题)代码: getUid() { export class UserAddReq { @post('/addUsers') 根据官方文档controller#请求参数类型转换这一节,写了“如果是复杂类型,如果指定的类型是 Class,将会自动转换为该类的实例。”,并且给出了示例,但是示例比较简单,如下: getName() { @get('/') 问题:controller控制器接收的body参数,是否不能自动深度转换为自定义的复杂类的实例,只能自动转换最外面的一层?还是需要有一些设置才能深度转换? Midway Versions(Midway 版本)
✓ @midwayjs/faas-typings(not installed)
|
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 6 replies
-
文档下面有写,写interface就不会自动转了。要么不转,要么全转 |
Beta Was this translation helpful? Give feedback.
-
@czy88840616 谢谢大佬回复,我的意思是我想全转,但是转换不完全,body参数只有最外面的对象转换了,对象的属性(值是一个数组<每个元素是另一个类型>)是数组的情况时,数组中的元素没有自动转换 |
Beta Was this translation helpful? Give feedback.
-
@czy88840616 代码如下,去掉了参数验证: export class IconReq { |
Beta Was this translation helpful? Give feedback.
自动转换类这个逻辑太隐晦了,新版本 v4 中已经移除了,后续自动转换只会显式在 validate 时进行。