Vue指令
指令是带有
v-
前缀的特殊属性;写在标签上面,而不是标签里面;
属性
v-bind动态绑定
动态绑定属性名和属性值
Mustache语法(双大括号)
不能作用在HTML attrebute
上, 遇到这种情况应该使用v-bind指令;
<p v-bind:title="cla">hello vue</p>
- 动态参数
<a v-bind:[attrName]="url">点我</a>
data:{
attrName:'href',
url:'https://www.baidu.com'
}
- v-bind: =====>
:
缩写 - Class与Style绑定
表达式结果的类型除了字符串之外, 还可以是
对象或数组
;
eg
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div id="app">
<!-- 属性的动态绑定 -->
<!-- <p v-bind:class="cla"></p> -->
<!-- <p v-bind:title="cla">hello vue</p> -->
<!-- 属性进行动态修改,attrname这个地方attrname和attrName没有区别,
大写也会转化为小写,但vue里面必须都小写 -->
<!-- <p v-bind:[attrname]="cla">hello vue</p> -->
<!-- v-bind: 缩写成: -->
<!-- <p :[attrname]="cla">hello vue</p> -->
<!-- isActive等于true时,class就等于active;
isActive等于false时,class就没有值了,这是对象的形式 -->
<!-- <p :class="{active:isActive}">hello vue</p> -->
<!--一个class有多个值,可以写成数组形式,多个样式梳理常用 -->
<!-- <p :class="[activeClass,errorClass]">您好!</p> -->
<!-- 绑定style,用对象的形式 -->
<p :style="styleObj">hello vue</p>
</div>
</body>
</html>
<script type="text/javascript">
var vm = new Vue({
el:'#app',
data:{
cla:'active',
attrname:'title',
isActive:false,
activeClass:'active',
errorClass: 'error',
styleObj:{color:'red',fontSize:'54px'}
}
})
</script>