Vue.js介绍以及vue的常见指令
来源:互联网 发布:网络盒子全网通 编辑:程序博客网 时间:2024/05/17 09:20
Vue是一个构建数据驱动的web界面库,vue.js的目标是尽量通过简单的API实现响应的数据绑定和组合的试图组件。
Vue实现的是MVVM的功能
一方面,通过ViewModel将Model的数据绑定到View的Dom元素上面,当Model里面的数据发生变化的时候,通过ViewModel里面数据绑定的机制,触发View里面Dom元素的变化;
另一方面,又通过ViewModel来监听View里面的Dom元素的数据变化,当页面上面的Dom元素发生变化的时候,ViewModel通过Dom树的监听机制,触发对应的Model的数据变化。
<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <title>hello Vue</title> <script src="js/vue.js"></script> <script src="js/jquery-3.1.1.js" ></script></head><body> <div id="app"> {{aa}}{{bb}} <ul > <li v-for="todo in dos"> {{todo.text}}</li> </ul> <input v-model="aa"> </div></body><script> new Vue({ el:"#app", data:{"aa":1,"bb":2,dos:[{text:1},{text:2},{text:3}]} }); $(function () { $("#app").css({"color":"red"}); })</script></html>
证明了vue和jquery并不冲突,显示了Vue的基本用法
vue的常用指令
v-text,v-html属性
html代码
<div id="app"> <h1>编辑姓名<input type="text" v-model="name"></h1> <h1>学校:<label v-text="school"></label></h1> <h1>姓名:{{name}}</h1> <div v-html="age">年龄:{{age}}</div> </div>
js代码
<script> var data1={school:"理工大学",name:"赵文娟",age:"<h1>18</h1>"} var app=new Vue({ el:"#app", data:data1, });</script>
这两个指令的绑定都是单向的绑定
V-model指令
这个指令实现了属性绑定,但是必须在data中为他赋初始值
html代码
<div id="app"> <h1>编辑姓名<input type="text" v-model="name"></h1> <h1>姓名:{{name}}</h1> <h2>备注:编辑备注<textarea v-model="Remark"></textarea></h2> <h2>备注:{{Remark}}</h2> <input type="checkbox" value="篮球" id="basketball" v-model="hooby"> <label for="basketball"> 篮球 </label> <input type="checkbox" value="足球" id="football" v-model="hooby"> <label for="football"> 足球 </label> <input type="checkbox" value="跳绳" id="skip" v-model="hooby"> <label for="skip"> 跳绳 </label> <h2>爱好:{{hooby}}</h2> <h2>户籍:{{Huji}}</h2> <select v-model="Huji"> <option >山西</option> <option >天津</option> <option >北京</option> </select> </div>
js代码
var data1={school:"理工大学",name:"赵文娟",age:"<h1>18</h1>",Remark:"三好学生",hooby:[],Huji:""} var app=new Vue({ el:"#app", data:data1, });
实现了为input、textArea、checkbox、下拉菜单的数据绑定
v-if和v-else
一般来说这两个指令是一起出现的
<div id="app"> <h1>年龄<span v-if="Age>18">大人</span><span v-else>小孩</span></h1> </div>
js代码
var data1={Age:13}; var app=new Vue({ el:"#app", data:data1, });
当然也可以只使用v-if指令
v-show指令
v-show实现的功能是将某一个元素显示或者不显示
通过v-if也可以实现这个功能
v-for指令
通常用于循环的显示一个列表
html代码
<div id="app"> <ul> <li v-for="todo in todos">{{todo.text}}</li> </ul> </div>
js代码
var data1={todos:[{text:"aaa"},{text:"bbb"},{text:"ccc"}]}; var app=new Vue({ el:"#app", data:data1, });
使用v-for实现json数据的绑定
<div id="app"> <ul> <li v-for="todo in todos">年龄:{{todo.name}},年龄:{{todo.age}}</li> </ul> </div>
js代码
var data1={todos:[{name:"赵文娟",age:121},{name:"赵文娟",age:121}]}; var app=new Vue({ el:"#app", data:data1, });
在v-for里面使用来渲染多个元素块
结合bootstrap实现分页的按钮
html代码
<div id="app"> <ul class="pagination "> <template v-for="page in pages"> <li v-if="page==1" class="disabled"><a href="#">上一页</a></li> <li v-if="page==1" class="active"><a href="#">1</a></li> <li v-else><a href="#">{{page}}</a></li> <li v-if="page==pages"><a href="#">下一页</a></li> </template> </ul> </div>
js代码
var data1={pages:10}; var app=new Vue({ el:"#app", data:data1, });
v-once指令
表示只渲染元素和组件一次,随后的重新渲染,元素/组件及其所有的子节点将被视为静态内容并跳过
<div id="app"> <h1 v-once>{{message}}</h1> </div>
js代码
var data1={message:"sasa"}; var app=new Vue({ el:"#app", data:data1, });
如果没有v-once指令的话,在控制台的改变会改变具体的message的内容,但是经过v-once指令的修饰以后,控制台不会动态的改变message的内容
v-bind指令
用来绑定class和style的值
<div id="app"> <h1 v-bind:class="{red:isred}">{{message}}</h1> </div>
js代码
var data1={isred:true,message:"sasa"}; var app=new Vue({ el:"#app", data:data1, });
v-on指令用来绑定标签的事件
绑定标签的事件
<div id="app"> <button v-on:click="dd">点我会输出1</button> </div>
js代码
var app=new Vue({ el:"#app", methods:{ dd:function () { console.log(11); } } });
- Vue.js介绍以及vue的常见指令
- Vue.js的常用指令-vue.js
- Vue.js介绍以及优缺点
- vue.js的常用指令
- Vue.js入门-简介和指令介绍
- Vue.js基础指令、基本介绍
- 【Vue.js】- Vue.js常用指令的使用
- Vue.js--自定义指令
- vue.js部分指令
- Vue.js--自定义指令
- Vue.js基本指令
- Vue.js指令
- Vue.js 指令学习
- Vue.js 自定义指令
- Vue.js常用指令
- vue.js(2.0)常用指令总结以及一些指令的坑!
- Vue.js的常见用法及基本原理
- Vue.js的常见用法及基本原理
- JavaSE学习(1)第一个程序
- 聊聊我对Java内存模型的理解
- 自定义dialog 设置全屏 取消style的padding
- ioctl函数的学习
- 【Unity&DragonBones】像素角色人物骨骼动画教程(一)PS文件如何导入DragonBones
- Vue.js介绍以及vue的常见指令
- 单例模式
- JQuery插件开发
- 嵌入式系统图形库之图形库(GUI)核心模块
- ByteArrayOutputStream和ByteArrayInputStream的作用
- 百度地图API调用(php 版本)输入地址 获取经度纬度
- mysql sql语句大全
- meta——html中磨人的小妖精
- 经常用到的快捷键