关于领域实体是否会受到后端接口限制的问题

来源:8-10 redux状态管理:定义首页reducers

慕勒1246168

2019-07-13

老师您好,关于领域实体我有问题想请教您,还请您不吝赐教!

根据项目中的redux架构,一个领域实体看起来就是某个后端接口返回的数据进行扁平化处理后的数据结构,除此之外没法对数据进行其它修改,那是不是就意味着领域实体其实是严重受到后端接口限制的呢?

例如以下情景:

前端某个Page要展示一个List,这个List中包含若干个ChildList,每个ChildList都有自己的Type,然后List中的Item通过Type字段与ChildList关联。

此时假设有10个ChildList,接着后端同学提供了10个接口来获取这些ChildList下的Item,那么前端是不是就只能创建10个领域实体去保存这些数据?

如果是的话,那此时redux/modules/Page中的代码好像就会变得特别庞大…

还有一个问题,同样也是上面的情景,假如在后端提供的10个接口中获取的10个Item数组中,存在彼此间表示同一字段的属性名不统一的情况(比如一个数组中Item对象里表示id字段的属性就叫做id,而另一个数组中Item对象里表示id字段的属性变成了itemId,然后第三个数组中居然又变成了gid!),像类似这种情况,我们前端应该如何处理呢?是通过额外的代码去做特殊处理,还是直接去锤后端?如果要通过额外代码做特殊处理,可否请老师指点一下这种情况下的最佳实践!

以上就是我在学习课程中想到的一些问题,因为能力和经验不足,感觉有点迷惑,希望老师可以抽时间指点一下,谢谢!!!

写回答

1回答

艾特老干部

2019-07-15

你好,你的问题有些地方描述的不是很清楚,我按照自己的理解回答下。

问题1:List和ChildList

如果List和ChildList下的Item属性基本一致,那么可以使用同1种领域实体Item表示,区别只是在展示层显示位置的不同。如果属性差别较大,可以使用2中领域实体,Item和ChildItem表示。不明白你说的10个领域实体去保存这些数据   是什么意思?比如对于页面上显示的文章而言,文章是一类领域实体,页面显示10篇还是20篇文章,都不会影响到你的逻辑代码,也不会出现redux/modules/Page中的代码好像就会变得特别庞大  的问题。


问题2:

让后端去改统一,这是基本规范和基本编码素养问题。

0
1
慕勒1246168
谢谢老师您的回答,我现在已经稍微理解了! 之前描述的10个领域实体是因为在第二个问题的情景中,后端给到的数据属性和结构都基本一致,但是属性名各异,这时候好像就不能用同一个schema去描述这些数据了。 但是如果后端提供的数据设计良好,字段命名规范,也就不存在这些问题了,最近在工作中尝试着把老师您课程中的前端架构应用到自己的项目中,虽然刚开始还是有点困难,但理解之后就发现这样编码确实是很优雅的。 希望以后有机会可以看到老师您出品更加高级和优秀的课程!
2019-07-15
共1条回复

React16+Redux实战企业级大众点评Web App

从架构设计到部署上线,带你学习React技术栈与核心思想

1071 学习 · 306 问题

查看课程