这篇文章将为大家详细讲解有关Vue中如何使用class类样式,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
在vue中为我们提供了 几种方式来使用class类的样式
我们先正常在 style
标签中 书写一个类名为 active
的样式
<style>
.active{
color: red;
font-size: 20px;
font-style: normal;
}
</style>
在我们的 script
标签中创建一个 vm
实例,在实例的 data
数据中心写上 isActive:true
,
true
表示使用此样式,false
则表示不使用
<script src="js/vue.js"></script>
<script>
let vm = new Vue({
el:'#app',
data:{
isActive:true
}
</script>
此时我们在 标签中 已v-bind
指令 使用class
类
<div id="app">
<h2 :class="{active:isActive}">我是使用布尔值引用class样式</h2>
</div>
查看输出结果:
现在我们将true 改为 false:
data:{ isActive: false }
查看输出结果:
我们可以在 v-bind: 指令后添加表达式,当满足该条件时,调用该 class
类
举例,我们在数据中心 data
中有一个对象数组,把他渲染到视图层上,我想让 索引为 偶数的引用
class 类样式:
<body>
<div id="app">
<ul>
<li v-for="(item,index) in list">{
<!-- -->{index}}----{
<!-- -->{item.name}}</li>
</ul>
</div>
<script src="js/vue.js"></script>
<script>
let vm = new Vue({
el:"#app",
data:{
list:[
{id:1,name:"金克斯"},
{id:2,name:"杰斯"},
{id:3,name:"凯特琳"},
{id:4,name:"蔚"},
]
}
})
</script>
在 li 中使用属性绑定class类样式:
<li v-for="(item,index) in list" :class="{active: index%2 == 0}">
{
<!-- -->{index}}----{
<!-- -->{item.name}}
</li>
输出结果为:
我们也可以在数据中心 定义 一个 mark
,通过定义 mark
的值来做到让某一行 单独引用 class类
<li v-for="(item,index) in list" :class="{active: index === mark}">
{
<!-- -->{index}}----{
<!-- -->{item.name}}
</li>
let vm = new Vue({
el:"#app",
data:{
list:[
{id:1,name:"金克斯"},
{id:2,name:"杰斯"},
{id:3,name:"凯特琳"},
{id:4,name:"蔚"},
],
mark:0
}
})
此时只有索引为 0 的 引用了样式,即第一个:
多个类,可以直接封装到对象中,在视图层直接调用对象名即可!
多个类,可以将其放置在对象中,在视图层就是一个对象名称,在数据中心data
中是一个对象,对象中罗列出多个类
<style>
.f50{
font-size: 50px;
}
.blue{
color: blue;
}
.background{
background-color: black;
}
</style>
<body>
<div id="app">
<p :class="classObject">中国人</p>
</div>
</body>
let vm = new Vue({
el:"#app",
data:{
classObject:{
"f50":true,
"blue":true,
"background":true
}
}
})
输出结果为:
也可以在自定义计算属性,封装在函数中,在返回调用
let vm = new Vue({
el:"#app",
computed:{
// 1. 自定义的计算属性名,
// 2.计算属性做的事情,我们将其封装到函数中
myclass(){
return {
"f50":true,
"blue":true,
"background":true
}
}
}
})
<p :class="myclass">中国人</p>
输出结果一致
.f50{
font-size: 50px;
}
.blue{
color: blue;
}
.background{
background-color: black;
}
<!-- 注意,class 名要加引号 -->
<p :class="['f50','blue','background']">一周又一周</p>
输出结果:
关于“Vue中如何使用class类样式”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。