初识Vue
引入
网页编程基本包括:
- 逻辑操作
- 循环(for)
- 判断(if)
- 事件 js(行为层)
- 浏览器事件:window、document事件
- DOM事件:标签事件(增,删,遍历,改)
- 衍生框架:
- jQuery
- Angular:由java程序员开发,将后台的MVC(模型、视图、控制器)模式搬到了前端并增加了模块化开发的概念
- React:高性能的js前端框架,特点是提出了新概念【虚拟DOM】减少真实DOM操作,在内存中模拟DOM操作,有效的提高了前端渲染效率
- Vue:一款渐进式Javascript框架,综合了Angular和React的特性
- React
- 等等
- 视图
- html(结构层)
- css(表现层):难点
- 衍生框架:
- BootStrap
- Layui
- 等等
- 通信
- xhr(原生的js事件)
- ajax(jQuery封装的)
- axios(一个前端通信框架)
例如java全栈工程师就需要掌握:
后台开发:主打类似于ssm框架编写,crud编写
前端:html、css、js、jQuery、Vue
运维:项目发布,服务器如何运行一个项目?在Linux上部署
其中前端的部分对java工程师来说也很重要。
在实际开发中,类似于后端有maven等项目打包工具,前端也有webpack这样的工具。又因为css是难点,但是css又不具备一个完整语言的特性,所以我们可以采用Less语言来间接生成css文件。与Less类似的是TypeScript的流行,它是Javascript的一个超集,支持许多新特性。
今天,笔者就带大家做一个Vue框架的引入。
Vue概述
Vue.js (读音 /vjuː/,类似于 view) [以下简称为Vue]是一套用于构建用户界面的渐进式JavaScript框架。 [5] 与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。
视图层:HTML+CSS+JS,它遵循SoC关注度分离原则
而其他的类似于
网络通信,它交给了axios。当然,在实际开发中,你也可以选择使用jQuery的ajax。
页面跳转交给了vue-router
状态管理交给了vuex
前端组件库(UI框架)
- iView:移动端支持比较多
- element ui :桌面端支持比较多
- Bootstrap
- Ant-Design
- AmazeUI:又叫“妹子UI”,一款HTML5跨屏前端框架
MVVM模式
- Model:模型层
- View:视图层
- ViewModel:连接视图和数据的中间件,Vue就是MVVM中的ViewModel层的实现者
在MVVM框架中,是不允许 数据 和 视图 直接通信的,只能通过ViewModel来通信,而ViewModel就是定义了一个观察者
- ViewModel能够观察到数据的变化,并对视图对应的内容进行更新
- ViewModel能够监听到视图的变化,并能够通知数据发生改变
Vue就是一个MVVM的实现者,他的核心就是实现了DOM监听与数据绑定
为什么使用MVVM
MVVM模式和MVC模式一样,主要目的是分离视图(View)和模型(Model),有几大好处:
- 低耦合:视图可以独立于Model变化和修改,一个ViewModel可以绑定到不同的View上,当View变化时MOdel可以步变,当Model变化时View也可以不变。
- 可复用:你可以把视图逻辑放在一个一个ViewModel里面,让很多View重用这段视图逻辑。
- 独立开发:开发人员可以专注于业务逻辑和数据的开发,设计人员可以专注于页面独立设计。
- 可测试:可以针对ViewModel来写测试。
为什么使用Vue
- 轻量级
- 更适合移动端
- 容易上手,文档齐全
- 结合了Angular(模块化)和React(虚拟DOM)的特性
- 开源,社区活跃
开始Vue程序
前端编写的编译器通常有:
- VsCode
- HBuilder
- Sublime
- WebStrom
但是在这里,笔者选择功能强大的idea进行演示:
新建demo.html
1 |
|
演示效果:
Console控制台操作演示:
体现了MVVM的双向绑定
总结
至此,Vue的引入到此结束,Vue是一个前端框架的集大成者,也是前后端分离的代表,让前后端程序员变得各司其职,也方便了前端的操作和带来更多的变化。









