是一个js的 mvvm 渐进式 视图 框架 mvvm mvc m model 数据层 c controller 核心业务代码 v view 视图 html/css
mvvm m 数据 v 视图 mv vm(vmodel vue实例) 当数据改变时,视图自动刷新 (通过vmodel vue的实例控制刷新)
一切是数据为核心,使用数据来驱动视图刷新(不要想着去操作dom)
扩展了 普通html属性的功能(用法同自定义属性) v-指令名=“值”
<div v-xxx="值"> v-model 将表单控件的value 属性 与 vue中的 数据 进行双向绑定v-text 不需要记 将元素 的文本内容 与 一个vue的数据进行绑定v-html 不管是v-text还是{{}}都不会渲染富文本数据 渲染富文本数据v-bind:属性 将一个普通的任意标签的属性(可以是自定义属性)的值,与vue一个数据进行绑定 简写: :属性v-on:事件 将vue元素的事件与vue的方法进行绑定 简写 @事件 绑定方式: 1, <button @click="fn">按钮</button> new Vue({ methods:{ fn(e){ // 这种绑定方式 fn就是事件函数,第一个参数就是事件对象 } } }) <button @click="fn()">按钮</button> // 需要传参的时候 new Vue({ methods:{ fn(){ // 这种绑定方式 fn是普通调用,不再是事件函数,需要得到事件对象需要手动传入 $event // $event 挂载到Vue.prototype上的 } } }) 方法中改变数据 this.数据 = 值 eg: { data:{ isShow:true }, methods:{ fn(){ this.isShow = !this.isShow } } } 事件修饰符 .stop 阻止事件冒泡 .prevent 阻止默认事件 .capture(捕获) 捕获阶段就提前触发 .self 只能自己触发 其后代元素无法触发 .once