看了代码才知道我就是纯正牛马

62 阅读1分钟

一、普普通通的需求背景

实现一个动态表单的依赖关联配置。以下以一个简单的例子做说明:
假设1个表单Form,存在表单项,组件库可以理解为antd

  • A: 姓名
  • B: 年龄
  • C: 性别

假设姓名为空时,年龄无法编辑。假设姓名改动,清空年龄。

二、牛马牌:原代码实现(图)

以下是我看到的代码(不能晒code,不可以!我们玩的就是抽象!)

好了, 代码简化思路如下图 image.png

那么问题来了,假设B年龄又依赖了C性别怎么办呢?

image.png

虚空加强版来了

image.png

image.png

以下为Form技能列表:

  • 感知到表单谁在变
  • 更改ABC的Disable状态
  • 更改ABC的值

image.png

文笔不太行,只能画画图了,图也画的不太行。。

三、接下来就交给你(我)了,把需求实现吧!

这里应该有上面的实现答案?

这里就不贴答案了,一千个人眼里有一千个哈姆雷特
本文只要看上面的哈利波特就行了。

四、恍然大悟

当我自己看完上面的哈利波特的奇思妙想后,跟朋友友好的交流了一番,朋友的一张图让我真正的幡然醒悟。 为什么说我是纯正牛马?请看下图分解:

image.png

哎,我就是这个B。。。

image.png (本故事纯属虚构,如有雷同,都是牛马)