MVC中的M(model)、MVC总结

MVC中的M(model)、MVC总结

MVC封装message.js(重点明白M的封装)

这篇博客的源代码是我的正在写的在线简历,博客是继上一篇写的 完整代码(项目暂未完成) 预览地址

在本地预览项目的时候用的http-server 将代码变得有结构

V与C

将message.js的代码封装为MVC模式, 先分离V和C,让代码看上去有条理 修改后的结构:

完整代码message.js

M(model)操纵数据的模块

model是操纵数据的模块,所以将LeanCloud封装为操作数据的对象.将初始化和操纵数据的方法封装在model里:

fetch()save()返回promise,以便后面的controller调用

剩下部分的结构修改如下:

  1. 将view和model传入controller,对其操作
  2. 在controller中添加并初始化model
  3. 使用model里操纵数据的函数(fetch和save),并对返回的promise使用.then()继续写成功和失败后的代码

controller在调用fetch()save()并接受到返回的Promise之后就可以直接去写异步代码,可以写成功之后和失败之后要做的事.

操纵数据交给model,之后成功或失败处理,交给controller.在返回的Promise在后面then就好了.至于是成功还是失败,就要看model层的返回信息了

message.js分离MVC中的M完整代码

MVC总结

MVC就是把代码分为三块

  1. V(view)只负责看得见的东西.
  2. M(model)只负责跟数据相关的操作,不会出现DOM,不会出现任何的html/css操作.例如model里只会有初始化数据库,获取数据方法fetch(),保存数据的方法save()
  3. C(controller)只负责把这些view和model组合起来,找到view,找到model,使用model完成数据修改业务,并修改view的显示

V:视图 M:数据 C:控制器

MVC是一种代码组织形式,不是任何一种框架,也不是任何一种技术,只是组织代码的思想,要做的就是V和M传给C,C去统筹

至于M,V,C是对象还是类,都不重要.在js里,MVC分别由三个对象去担任三个职责

MVC的逻辑顺序(绿色字)

model专门专注对于server(服务器上的数据库)的访问

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏智能计算时代

Envoy架构概览(6):异常检测

异常值检测和弹出是动态确定上游群集中的某些主机是否正在执行不同于其他主机的过程,并将其从正常负载平衡集中移除。 性能可能沿着不同的轴线,例如连续的故障,时间成功...

42160
来自专栏Danny的专栏

VMware10下安装CentOS 6.5+基本网络配置

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/...

17930
来自专栏木头编程 - moTzxx

Laravel 框架集成 UEditor 编辑器的方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011415782/article/de...

22710
来自专栏Vamei实验室

Linux的内存分页管理

内存是计算机的主存储器。内存为进程开辟出进程空间,让进程在其中保存数据。我将从内存的物理特性出发,深入到内存管理的细节,特别是了解虚拟内存和内存分页的概念。

20610
来自专栏LuckQI

学习Java基础知识,打通面试关~十八学习加载器的双亲委派模型

在Java中有两种不同的类加载器:一个是启动类加载器,该加载器是虚拟机的一部分,另外一个加载器就是其他类加载器也可以说是自定义类加载器。

7810
来自专栏互扯程序

手把手教你调用百度人脸识别API

现在是资源共享的时代,同样也是知识分享的时代,如果你觉得本文能学到知识,请把知识与别人分享。

7.8K90
来自专栏SDNLAB

P4语言编程快速开始

经过前两篇的P4理论介绍,相信大家已经对P4有个基本的了解了,本片文章为大家带来P4语言编程实战。 1、系统环境安装 P4项目的官方文档上都是以Ubuntu为例...

49060
来自专栏idba

MySQL 压测工具之mydbtest

一 前言 本文介绍一款绿色免安装版本的数据库压测利器--mydbtest(mydbtest_linux64.bin,由楼方鑫大牛编写).该压测软件区别于sys...

20530
来自专栏IT可乐

深入理解计算机系统(1.3)------操作系统的抽象概念

  上一篇博客我们讲解了存储设备的层次结构,并详细讲解了高速缓存的原理,以及可以利用高速缓存来提高程序性能。如果对Java Web 熟悉的,我们可以理解高速缓存...

21390
来自专栏数据小魔方

左手用R右手Python系列——使用多进程进行任务处理

数据抓取中的密集任务处理,往往会涉及到性能瓶颈,这时候如果能有多进程的工具来进行支持,那么往往效率会提升很多。 今天这一篇分享在R语言、Python中使用调用多...

29290

扫码关注云+社区

领取腾讯云代金券