慢来比较快,虚心学技术
需求
待办列表,要求每一项任务可以跳转到特定不同的页面或调用不同接口,从而实现消息机制
设计思路
第一波
思路:通过增加任务表与业务表之间的路由配置表,每次生成任务信息的时候,将对应业务模块路由与相应的业务id拼接链接同步传入,前端获取任务详情时自带路径跳转
优点:一次存储,多次取用,也不用特殊处理
弊端:路径耦合固定,一旦发生路由变更,之前存在任务表中的路径将会失效,导致无法获取业务信息或其他异常
第二波
思路:任务列表中存储业务id以及业务模块专属的key,当前端获取任务列表的时候再同固定路由配置表进行模块路径匹配拼接
优点:灵活存取,不受路由变化限制,正好解决上一设想的缺陷
弊端:每次获取任务列表的时候都需要进行路径组装,相对麻烦
第三波
思路:去除路由配置表,由配置文件代替相同功能,在取出任务时由程序代码进行路径拼接并返回给前端
优点:使用程序控制,较为灵活
弊端:每次获取任务列表的时候都需要进行路径组装,相对麻烦
第四波
思路:为了增强灵活性,不进行拼接,而是由前端获取到任务列表后,每次点击根据每个任务的id和key判断调用的接口或跳转的页面
优点:大大增强灵活性,前端随时调整接口或页面的跳转
弊端:尚未发现
总结
有时候最简单直接的解决方案,可能是最有效的方案。精简解耦,需要经验和技巧支撑,多谢前辈们的建议。
不知道还有没有别的解决方案 ,欢迎评论区互相讨论利弊