首页 技术 正文
技术 2022年11月11日
0 收藏 433 点赞 4,690 浏览 3895 个字

1.v-html

  用于输出真正html,而不是纯文本。

2.v-text

  输出纯文本。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>v-html与v-text的区别</title>
<script src="js/vue.min.js"></script>
</head>
<body id="body">
<div v-html="showHTML"></div>
<div v-text="showText"></div>
<script>
var ve=new Vue({
el:'#body',
data:{
showHTML:'<b><i>这里我们输出HTML,HTML标签将会不会显示,并且文本将会按照标签类型显示</i></b>',
showText:'<b>这里我们输出纯文本,HTML标签将会在浏览器上显示</b>'
}
})
</script>
</body>
</html>

3.v-show

  官方文档的定义是:将元素的显示设置为none或其原始值,具体取决于绑定值的真实性。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>v-show的使用</title>
<script src="js/vue.min.js"></script>
</head>
<body>
<div v-show="true" style="width:200px;height:200px;background:red;" id="app"></div>
<script>
var ve=new Vue({
el:'#app'
})
</script>
</body>
</html>

这里要说明一下v-show=“true”是显示,v-show=”false’或者v-show=”none’是隐藏,还有el:”#app”不可以省去,否则v-show会失效。

4.v-bind

  用于html属性的数据绑定。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="js/vue.min.new.js"></script>
<style>
.toGreen{background: green;}
.toRed{background: red;}
.toYellow{border:1px solid black;}
</style>
</head>
<body>
<div v-bind:class="{toGreen:isGreen,toRed:isRed}" style="width:200px;height:200px;" id="whatColor" v-on:click="changeColor()" class="toYellow"></div>
<script>
var ve=new Vue({
el:'#whatColor',
data:{
isGreen:true,
isRed:false
},
methods:{
changeColor:function(){
ve.isGreen=!ve.isGreen;
ve.isRed=!ve.isRed
}
}
})
</script>
</body>
</html>

3.v-on

  用于监听DOM事件。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>v-on的使用</title>
<script src="js/vue.js"></script>
</head>
<body>
<div id="v-on" v-on:click="changeStatus">
{{message}}
</div>
<script>
var vOn=new Vue({
el:'#v-on',
data:{
message:'我喜欢vue.js'
},
methods:{
changeStatus:function(){
if(this.message=='我喜欢vue.js')
{
this.message='我不喜欢vue.js'
}
else
{
this.message="我喜欢vue.js"
}
}
}
})
</script>
</body>
</html>

  注意:只有v-on和v-bind可以接参数,在指令后面用冒号指明属性和值绑定。

4.v-model

  用于表单输入与应用状态的双向数据绑定。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>v-model的使用</title>
<script src="js/vue.js"></script>
</head>
<body>
<div id="v-model">
<input type="text" v-model="message">
<p>{{message}}</p>
</div>
<script>
var vModel=new Vue({
el:'#v-model',
data:{
message:''
}
})
</script>
</body>
</html>

5.v-if

  v-if接收bool类型。true的话则生成html,false则不生成。或者直接将元素remove掉。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>v-if的使用</title>
<script src="js/vue.js"></script>
</head>
<body>
<div id="v-if">
<p v-if="seen">我在闪烁</p>
</div>
<script>
var vIf=new Vue({
el:'#v-if',
data:{
seen:true
},
methods:{
change:function(){
if(this.seen)
{
this.seen=false;
}
else
{
this.seen=true;
}
}
}
})
setInterval(vIf.change,)
</script>
</body>
</html>

6.v-pre

跳过瓷元素及其子元素,跳过大量没有指令的节点加快编译速度。

7.v-cloak

官方文档:该属性保留在元素上,直到关联的ViewModel完成编译。结合CSS规则,例如[v-cloak] { display: none },该指令可用于隐藏未编译的胡须绑定,直到ViewModel准备好。

在vm未加载之前,html中的插值会存在,影响页面美观。在元素上添加v-cloak并在css中写入[v-cloak]{display:none;},vm加载之前,该元素一直隐藏,v-cloak指令存在,vm加载之后,元素显示,v-cloak指令消失。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="js/vue.min.js"></script>
<style>
[v-cloak]{display: none;}
</style>
</head>
<body>
<div v-cloak>{{message}}</div>
</body>
</html>

8.v-el

在vue2.0之前的版本使用,vue2.0之后用ref代替。这里是用vm.$$.XX获取带v-el指令的元素。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="js/vue.min.js"></script>
</head>
<body id="body">
<div v-el="hi" style="width:100px;"></div>
<script>
var vm=new Vue({
el:'#body'
})
alert(vm.$$.hi.style.width)
</script>
</body>
</html>

9v-for

用于渲染列表项。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>v-for得使用</title>
<script src="js/vue.js"></script>
</head>
<body>
<ul id="ul">
<li v-for="(item,index) in items">
{{item.message}}-{{index}}
</li>
</ul>
<script>
var oUl=new Vue({
el:'#ul',
data:{
items:[
{message:'Foo'},
{message:'Bar'}
]
}
}) </script>
<ul id="ul1">
<template v-for="item in items">
<li>{{item.msg1}}</li>
<li>{{item.msg2}}</li>
</template>
</ul>
<script>
var oUl=new Vue({
el:'#ul1',
data:{
items:[
{msg1:'1-1',msg2:'1-2'},
{msg1:'2-1',msg2:'2-2'},
{msg1:'3-1',msg2:'3-2'},
]
}
})
</script>
</body>
</html>
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,497
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,910
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,744
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,498
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:8,136
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:5,301