初学express疑问
发布于 6 年前 作者 vincentdd 2622 次浏览 来自 问答

有个问题像请教论坛里的大佬,我最近在看mdn上express的教程, 感觉按照mvc模型实现这个应用之后,代码的复用性有点差,例如这个项目结构controller里面包含了表单输入的验证和消毒,我觉得不同页面间这些操作都是类似的,有没有别的分层架构可以参考?

5 回复

除了mvc,还有一些插件或者工具函数等其他分组。验证可以抽离出来做一个插件,参考joi或者egg-validate。至于消毒是神马。。

@CaanDoll 不好意思,我瞎翻译的。。。就是express-validator做表单数据的验证和清理。:)

@vincentdd https://docs.nestjs.com/ nest.js 代码复用比较好,但是得了解AOP 那套思想

express 本身已经对node.js的server请求进行了一次封装,这不是mvc本身的问题,mvc还是很经典的,它本身已经从功能上实现了一层代码服用,你现在面临的是业务代码的服用问题,可以考虑使用函数化编程,这样做可以实现业务代码的复用。

当然,你也要考虑到过渡复用代码带来的问题。

很明显的问题就是代码的语义化不明显了,不利于维护,不利于团队的合作。

针对这个问题,最好的解决方案就是引入第三方库,而这样的第三方库有很多,这里就不一一介绍了。

如果是个人DIY的话,推荐是找个第三方库,研究下它的源码。

觉得 express 难用,就直接用Enhancer 云平台做无栈开发吧。

回到顶部