1.1 MVVM开发模式
MVVM是Mode-View-ViewModel的缩写,它是一种基于前端的开发架构模式,其核心是提供对View和ViewModel的双向数据绑定,当ViewModel的数据发生变化时,View也会同步更新数据,反之亦然。
可通过下图来理解MVVM开发模式:
使用MVVM模式的优势:
-
低耦合。View 可以独立于 Model 变化和修改,一个 ViewModel 可以绑定到不同的 View 上
-
可重用性。可以把一些视图逻辑放到一个ViewModel里面,让很多View重用这段视图逻辑
-
独立开发。开发人员可以专注于业务逻辑和数据开发的ViewModel,设计人员可以专注于页面设计
-
可测试。MVVM可针对ViewModel进行测试,解决了界面难以测试的问题
1.2 Vue.js
Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。
渐进式框架的理解:
Vue的核心的功能,是一个视图模板引擎,但这不是说Vue就不能成为一个框架。如下图所示,这里包含了Vue的所有部件,在声明式渲染(视图模板引擎)的基础上,我们可以通过添加组件系统、客户端路由、大规模状态管理来构建一个完整的框架。更重要的是,这些功能相互独立,你可以在核心功能的基础上任意选用其他的部件,不一定要全部整合在一起。可以看到,所说的“渐进式”,其实就是Vue的使用方式,同时也体现了Vue的设计的理念 。
1.3 vue下载与引入
vue.js官网提供vue.js的下载方式,可通过官网来获取vue.js。以下给出vue的下载及引入方式。
-
直接在页面中使用
<script>
引入注意:
在开发环境下不要使用压缩版本,不然你就失去了所有常见错误相关的警告!
-
使用CDN引入
对于制作原型或学习,可以这样使用最新版本:
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
- 1
对于生产环境,推荐链接到一个明确的版本号和构建文件,以避免新版本造成的不可预期的破坏:
<script src="https://cdn.jsdelivr.net/npm/[email protected]"></script>
- 1
1.4 第一个Vue应用
在下面的应用中,将使用vue的数据双向绑定,将用户的输入同步显示在视图上
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>第一个Vue应用</title> </head> <body> <div id="app"> <input type="text" v-model="message" placeholder="请输入..."> <h3>输入的内容是:{{message}}</h3> </div> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <script> var app=new Vue({ el:'#app', data:{ message:'' } }) </script> </body> </html>
运行效果如图