什么是vue.js,它的优点

236 阅读3分钟

http,服务器的使用在vxcode中运行vue文件,ctrl+shift+p 找到express:host current workspace and open in browser

默认用files打开

vue是最火的前端框架

react 是最流行的框架

  • vue 可以用来手机app开发借助weex
  • 构建用户界面的框架,只关注于视图层
  • 前端的主要工作,只关注与mvc中的v层,制作前端页面效果

学习前端框架原因

  • 使用框架能够提高企业的开发效率

  • 前端之前在没有框架和类库之前手写原生代码,原生代码有兼容性,jquery类库解决兼容性问题,jquery用多了但频繁的操作dom结构,调用模板引擎渲染页面

  • 前端模板引擎做了什么事情

       //排序按照id 
    
       <script type="text/javascript">
      var arry = [{
      	id: 1,
      	name: "lu"
      }, {
      	id: 3,
      	name: "li"
      }, {
      	id: 2,
      	name: "wang"
      }, {
      	id: 4,
      	name: "zhang"
      }, ]
    

    注意: 最新的数组渲染到页面,id1和4位置不变,但是需要被重新渲染,其实不需要重新渲染,使用模板引擎真个页面都要重新渲染,消耗性能,框架可以减少不必要的dom操作,提高渲染效率。

  • 双向数据绑定,通过提供指令,只需要了解业务逻辑不需要关心dom是如何渲染的

框架和库的区别

1.1框架是一种完整的解决方案,不能随意修改,对项目侵入较强。

1.2只是一个单一的小功能,只是一个插件,侵入性较少(从ejs到art-template)

mvc与mvvm的区别

  • mvc 是后台的 登录,注销,还有路由层
  • mvvvm是前端的

1.1 app.js 项目的入口函数,一切的请求,都要从这里开始处理,并没有路由分发的功能,需要调用router.js模块进行路由的分发处理。

1.2 router.js 路由分发处理模块,为了保证路由模块的智能单一,router.js只负责路由分发,不负责业务处理,需要调用controller模块进行业务处理。

1.3 controller 业务逻辑处理层,封装了一些具体业务逻辑处理的代码,但是为了保证职能单一,此模块只负责处理业务,不负责处理数据的crud,如果涉及到了数据的crud,需要调用model层(create,read,update,delete)

1.4 model层 负责处理数据库,执行对应的sql语句,进行数据的crud

步骤: app.js-->router.js-->controller--> model层

怎么让请求进入到app.js中,需要前端的某些操作进入到后端

1.5 view层 视图层 每当用户操作了界面,如果需要进行业务的处理,都会通过网络请求请求后端的服务器,此时请求就会被后端的服务器监听到

步骤: view层--->app.js

1.1~1.4处理过程 1.2~1.3是controller层 1.4 model层 1.5视图层

mvvm是视图层1.5

  • mvvm 是前端视图层的分层开发事项,主要把每个页面分成了m 、v、 vm,其中vm是思想核心,因为vm是m和v之间的调度者
  • m 是数据 这里的m保存的是每个页面中单独的数据(例如首页,有一个table 中的数组就是m)
  • v html代码渲染到页面中,每个页面之间的结构
  • vm 分隔了v和m v里面数据修改表单,每当v层想要获取或者保存数据的时候都要通过vm做中间的处理
  • m到vm是取数据 vm到m是存数据 vm到v是取数据,v到vm是存数据
  • 前端页面使用mvvm的思想,主要是为了开发更加方便,因为mvvm提供了数据的双像绑定,是由vm提供的