Vue 样式 可以使用 class 来指定,且 class 里面可以支持三元表达式的形式。Vue 样式使用三元表达式的语法格式为 :class="['style1', 'style2', flag?'style3':'style4']"
。
<!DOCTYPE html>
<html>
<head>
<title>Vue 样式支持三元表达式</title>
<script type="text/javascript" src="./lib/vue-2.6.10.min.js"></script>
<style>
.red{
color: red;
}
.italic{
font-style: italic;
}
.active{
letter-spacing: 0.5em;
}
</style>
</head>
<body>
<div id="app">
<h1 :class="['red', 'italic', flag?'active':'']">HaiCoder</h1>
<p>嗨客网(www.haicoder.net)</p>
</div>
</body>
<script>
var v1 = new Vue({
el:"#app",
data:{
flag:false
}
})
</script>
</html>
浏览器运行效果如下图所示:
我们看到,h1 标签只被指定了 red 和 italic 两个样式,而样式 active 并未被指定。因为 Vue 实例对象的 flag 为 false。我们,现在将 flag 的值设为 true,代码如下:
<!DOCTYPE html>
<html>
<head>
<title>Vue 样式支持三元表达式</title>
<script type="text/javascript" src="./lib/vue-2.6.10.min.js"></script>
<style>
.red{
color: red;
}
.italic{
font-style: italic;
}
.active{
letter-spacing: 0.5em;
}
</style>
</head>
<body>
<div id="app">
<h1 :class="['red', 'italic', flag?'active':'']">HaiCoder</h1>
<p>嗨客网(www.haicoder.net)</p>
</div>
</body>
<script>
var v1 = new Vue({
el:"#app",
data:{
flag:true
}
})
</script>
</html>
此时,再次运行,浏览器运行结果如下:
我们看到,h1 标签样式 active 被指定了。因为 Vue 实例对象的 flag 为 true。
Vue 样式可以使用 class 来指定,且 class 里面可以支持三元表达式的形式。Vue 样式使用三元表达式的语法格式为 :class="['style1', 'style2', flag?'style3':'style4']"
。