VUE系列
一 简介 vue是一个兴起的前端js库,是一个精简的MVVM.从技术角度讲,Vue.js专注于 MVVM 模型的 ViewModel 层.它通过双向数据绑定把 View 层和 Model 层连接了起来,通过对数据的操作就可以完成对页面视图的渲染二 优势 1 vue则是通过Vue对象将数据和View完全分离开来了。对数据进行操作不再需要引用相应的DOM对象,可以说数据和View是分离的,他们通过Vue对象这个vm实现相互的绑定。这就是传说中的MVVM。2 我们可以理解成VUE架构是由无数个vue实例组成,每个组件也被称为实例.每个实例有各自的属性数据和方法
三 示例 <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <body> <div id="app">{ { message }}</div> </body> <script> var app = new Vue({ el: '#app', data: { message: 'Hello Vue!' } })</script>四 分类讲解 1 初始化类 var appname = new Vue({})//定义初始化对象,对对象进行操作赋值 2 内部定义类属性 1 el属性(类似js中的id属性,通过此属性传递对象,通常作用于div id) 2 data属性(1 字典类型 { key:value} 2 采用{ {key}}方式调用 3 alue可以是字符串,数字,列表,字典等任何支持的数据类型集合)3 template属性(可以从这里进行模板的定义,如果不进行配置,则调用绑定对象的模板)
4 method 属性(定义vue实例对象的动作方法)
5 components ( 局部组件的注册从这里进行)
3 调用内部调用变量 1 object(定义的对象).$data(属性).message(value) 2 this(定义的对象).message(value) 4 method部分 method:{functionname: function1(),functionname: function2()} 5 标签与属性 1 li标签 v-for属性 目的:循环过滤 v-text属性 目的:输出变量 v-html属性 目的:输出变量,但是不会转义语法 eg: <li v-for='item in itmes' v-text="item" v-html="item">item</li> //列表循环 代替{ {value}} vue部分 data:{ list:[1,2,3,4,5,6]2 button标签 v-on属性 目的:触发事件
v-on: 可以缩写成@(小技巧) 配合click事件
eg: <button @click="clickfunction>提交</button>//提交触发事件 vue部分 method:{ clickfunction: function(){ alter(this.inputvalue) } } 3 input标签 v-model属性 目的 通过input输入的值改变定义对象的属性,实现数据绑定 eg: <input type='text' v-model="inputvalue /> vue部分 data:{ inputvalue:"3"},6 组件方法 1 调用vue方法(全局) Vue.component( 'object-name', { props:[value], //定义变量 template:"<li>{ {value}}</li>"} //循环显示变量 } ) 2 定义对象(局部) 1 定义 var object-name={ props:[value], //定义变量 template:"<li>{ {value}}</li>"} //循环显示变量 } 2 vue中注册 components:{ "object-name":object-name }, 2 body调用 <todo-item v-bind:content="item" v-for="item in list"></todo-item> tod-itme为定义的object name content为方法定义变量 v-bind 将变量和循环列表变量绑定 v-for 循环列表本身7 总结 1 模板在组件中定义 2 局部组件需要在vue中注册 3 局部组件变量需要与循环变量进行绑定五 总结
这是对我两台学习vue.js的一个小总结