一.安装
通过 script 标签引入 js 文件/cdn 获取/csp 兼容版本/NPM 安装
使用 cdn 和 csp 兼容版本时可能会出现版本滞后和其他的一些问题,因此不建议使用;使用标签 script 引入和 npm 安装是比较合适的方法。
script 方法大家肯定都会,不做介绍;
npm 安装方法: \$ npm install vue
获取 CSP 兼容版本
\$ npm install vue@csp
获取最新开发版本(源自 github)
\$ npm install yyx990803/vue#dev
二.开始介绍
从技术角度:vuejs 专注于 MVVM 模型的 ViewModel 层。通过双向数据绑定把 View 层和 Model 层连接了起来。
从哲学角度:vuejs 希望通过一个尽量简单的 API 来提供反应式的数据绑定和可组合、复用的视图组件。它不是一个大而全的框架——它只是一个简单灵活的视图层。
1.ViewModel
它是一个同步 Model 和 View 的对象,在 vuejs 中,每个 vue 实例都是一个 ViewModel。它们是通过构造函数 vue 或其子类被创建出来的。
var vm = new Vue({ / options / });
2.视图(View)
视图是被 Vue 实例管理的 DOM 节点,每个 Vue 实例都关联着一个相应的 DOM 元素,当一个 vue 实例被创建时,它会递归遍历根元素的所有子节点,同时完成必要的数据绑定。
在使用 vuejs 时,除自定义指令外几乎不用直接接触 DOM;当数据发生变化时,视图会自动触发更新。
3.模型(Model)
vuejs 中的模型就是普通的 JavaScript 对象——也称为数据对象。可以操作他们的属性,同时正在观察它的 vue 实例也会收到提示。Vue 实例代理了他们观察的数据对象的所有属性,所以一旦一个对象{a:1}被观察,那么 vm.$data.a和vm.a将会返回相同的值,而设置 vm.a = 2 也会修改 vm.$data 。
4.指令(Directives)
指令是一个带特殊前缀的 HTML 特性,可以让 vuejs 对一个 DOM 元素做各种处理。
例如:<div v-text="message"></div>
此处 div 的指令为 v-text,其值为 message,Vuejs 会让该 div 的文本内容与 vue 实例中的 message 属性值保持一致。 Directives 可以封装任何 DOM 操作。
5.过滤器(Filters)
例如:<div></div>
这样在 div 的文本内容被更新之前,message 的值会先传给 capitalize 函数处理。
6.组件(Components)
每个组件都是一个简单的 vue 实例,它通过 vue.extend 返回的自定义构造函数可以把这些组件实例化;不过用声明式的用法是通过 Vue.component(id,constructor)注册这些组件,一旦组件被注册,它们就可以在 Vue 实例的模板中以自定义的元素形式使用。
1 | <my-component> |
7.响应的数据绑定
通过指令 v-if 的值真假与否来进行文案展示,通过对指令 v-if 的值进行真假改变达到效果——vuejs 不仅可以绑定文本到数据,也可以绑定 DOM 结构到数据。如下图: