基于蚂蚁金服「如何管理好10万行代码」搭建了 Vue 项目架构

此文是对蚂蚁金服文章的解读,所以要看懂此文一定要先去看原文:如何管理好10万行代码的前端单页面应用

当时看到蚂蚁金服这篇文章有点茅塞顿开,只不过他们是基于 React 技术栈开发的,但是架构是一种思想,不区分语言不区分框架的,所以我相信这套架构一定可以应用到 Vue 项目中。废话不多说,直接进入正文。

同一“页面”内的模块再划分

这里意思是每个页面划分为 MVC 结构。那么如何用代码提现 MVC 结构呢。对于 Vue 项目中,难点在于 MC 两层。最后小组讨论用 Vuex 来架构 MC 两层,如下图所示。

领域模型

领域模型是指可跨模块复用的公共数据,所以我们也用 Vuex 来架构它,存放目录如下。

视图型组件和容器型组件

这一点要在 Vue 中实现其实也很好做,请看这篇文章。但是我们这边基于业务考虑,暂时觉得没必要弄得这么细,所以通用业务组件这一块,在我们 Vue 项目架构就没采用视图和容器这种组合方式了。

跨模块通信

为了保证模块的纯粹性,所以跨模块通信采用中介者模式来解耦。我们建立了一个 pageTalk 目录用中介者模式来处理跨模块通信。

总结

以上便是我们基于蚂蚁这套架构实现了 Vue 架构版。此套架构实现仅为我方团队的理解,不能作为标准,但可以为大家提供参考价值。

欢迎入群交流

源码下载

猜你喜欢

转载自juejin.im/post/5b0d0b556fb9a00a284982aa
今日推荐