We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
后端现在使用 Java + Swagger annotation 的方式 先给出接口文档, 前后端分离开发 例子 :
{ "code": 200, "data": { "xxxCount": "", "xxxCode": 0 }, "msg": "" }
但是某些业务场景下, 没有 xxxCount 和 xxxCode 值, 所以直接返回
xxxCount
xxxCode
{ "code": 200, "data": "", "msg": "" }
data 为 '' 的原因是, 后端 api 层会把所有 null 转成 ''
data
''
null
但是, 从前端的角度来看, 和 API 约定的类型完全不一致, 导致前端取值 data.xxxCode 报错
data.xxxCode
我的想法是, 首先要符合文档的约定, 后端尽量标明 data 可能为 对象 或者 空 要求后端提供默认值, 也不是太合适, 而且有些默认值还和业务相关, 后端 API 应该保证抽象程度更高, 偏展示的逻辑尽量放在前端
对象
空
optional-chaining 需要 Babel 7+
类似 移动端 的 Model 层 和 Java Bean https://github.com/vvpvvp/model/blob/master/README_zh.md
facebook/idx safe-touch Lodash.get
如何和后端沟通,解决api接口返回多层嵌套的json,在中间的某一层为null的问题?
The text was updated successfully, but these errors were encountered:
No branches or pull requests
前后端分离, API 定义问题总结
后端现在使用 Java + Swagger annotation 的方式 先给出接口文档, 前后端分离开发
例子 :
但是某些业务场景下, 没有
xxxCount
和xxxCode
值,所以直接返回
data
为''
的原因是, 后端 api 层会把所有null
转成''
但是, 从前端的角度来看, 和 API 约定的类型完全不一致, 导致前端取值
data.xxxCode
报错我的想法是, 首先要符合文档的约定, 后端尽量标明 data 可能为
对象
或者空
要求后端提供默认值, 也不是太合适, 而且有些默认值还和业务相关, 后端 API 应该保证抽象程度更高, 偏展示的逻辑尽量放在前端
一些其他的前端解决办法
最好的解决办法
optional-chaining 需要 Babel 7+
ViewModel
类似 移动端 的 Model 层 和 Java Bean
https://github.com/vvpvvp/model/blob/master/README_zh.md
方便读取 JSON 数据的工具函数
facebook/idx
safe-touch
Lodash.get
相关讨论
如何和后端沟通,解决api接口返回多层嵌套的json,在中间的某一层为null的问题?
The text was updated successfully, but these errors were encountered: