基于蚂蚁金服「如何管理好10万行代码」搭建了 Vue 项目架构
此文是对蚂蚁金服文章的解读,所以要看懂此文一定要先去看原文:如何管理好10万行代码的前端单页面应用。
当时看到蚂蚁金服这篇文章有点茅塞顿开,只不过他们是基于 React 技术栈开发的,但是架构是一种思想,不区分语言不区分框架的,所以我相信这套架构一定可以应用到 Vue 项目中。废话不多说,直接进入正文。
同一“页面”内的模块再划分
这里意思是每个页面划分为 MVC 结构。那么如何用代码提现 MVC 结构呢。对于 Vue 项目中,难点在于 MC 两层。最后小组讨论用 Vuex 来架构 MC 两层,如下图所示。
领域模型
领域模型是指可跨模块复用的公共数据,所以我们也用 Vuex 来架构它,存放目录如下。
视图型组件和容器型组件
这一点要在 Vue 中实现其实也很好做,请看这篇文章。但是我们这边基于业务考虑,暂时觉得没必要弄得这么细,所以通用业务组件这一块,在我们 Vue 项目架构就没采用视图和容器这种组合方式了。
跨模块通信
为了保证模块的纯粹性,所以跨模块通信采用中介者模式来解耦。我们建立了一个 pageTalk 目录用中介者模式来处理跨模块通信。
总结
以上便是我们基于蚂蚁这套架构实现了 Vue 架构版。此套架构实现仅为我方团队的理解,不能作为标准,但可以为大家提供参考价值。
作者:深圳人人聚财前端团队
链接:https://juejin.im/post/5b0d0b556fb9a00a284982aa
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
网页设计师掌握的十个SEO方面
网页设计不只是关于美学,这是关于如何把一个网站放在一起。设计选择会对网站的搜索引擎优化产生很大的影响 – 正面或负面影响。反过来,这可能会影响网站在整个生命周期内的表现。 如果你是一名专业的网页设计师(或者如果你是从头开始创建自己的网站),重要的是要了解一些SEO基础知识 – 一些知识可以帮助构建到达目标受众群体的网站。了解搜索引擎优化的这10个方面,将帮助您设计出效果良好的网站,除了看起来很棒。 1.网站结构 每个站点的设计都应该考虑到清晰的逻辑结构。主页应该说明网站的总体目标 – 它存在的理由 – 并且细节应该被分解成子页面。 例如,如果您正在设计一个食谱网站,则主页可能会导致用于晚餐,汤和甜点的单独分类页面。这些子页面中的每一个都可以导致其各自的配方子页面。 在您的网站上有几个“图层”的子页面很好,但不要太深,否则百度可能无法抓取所有这些子页面。一般来说,尽量保持你的网站深度为三层或四层。Moz的视觉效果来自一个结构良好的网站: 一个网站的主页应该导向它的子页面,这导致它们自己的子页面,等等。 2.网址结构 网址影响网站的搜索引擎优化,因此从一开始就选择好的网站很重要。以下是针对...
- 下一篇
nasm示例一:调用syscall打印Hello World
NASM是基于英特尔 x86 架构的汇编与反汇编工具。 syscall是x86_64架构中专门做系统调用的指令,可参考syscall 1、示例 foo.nasm内容 global _start section .text _start: mov rax, 1 ; sys_write的系统调用编号为1 mov rdi, 1 ; 文件句柄1对应stdout mov rsi, msg ; 要输出的字符串地址 mov rdx, msglen ; 要输出的字符串长度 syscall ; 系统调用 mov rax, 60 ; sys_exit的系统调用编号为60 xor rdi, rdi ; exit 0 syscall section .data msg: db "Hello, World!", 10 ; ascii表中10对应换行符 msglen: equ $ - msg ; $ 等于当前行开头的地址 编译 nasm -felf64 foo.asm && ld -o foo foo.o 运行结果 [root@localhost nasm]# ./foo Hello, World...
相关文章
文章评论
共有0条评论来说两句吧...