设置默认第一个样式为active
<!DOCTYPE html>
<html >
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
.active {
color: crimson;
}
</style>
</head>
<body>
<div id="app">
<ul>
<li v-for="(item,index) in movies" :class="{active:currentIndex===index}" @click="change(index)">
<!-- 解释:active:currentIndex===index -->
<!-- 判断当前索引值和currentIndex的值是否相等,得到布尔值true或false,来确定当前的li标签的样式为active -->
<!-- 要使第一个li标签的style样式为active,那么设置currentIndex的默认值为index的第一个值,“0” -->
<!-- 以此类推,要使第二个li标签的style样式为active,那么设置currentIndex的默认值为index的第二个值,“1” -->
{{item}}
</li>
</ul>
</div>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
const app = new Vue({
el: '#app',
data: {
movies: ['大话西游', '喜剧之王', '整蛊之王', '长江七号'],
currentIndex: 0,
},
methods: {
change(index) {
this.currentIndex = index
//注意点击事件要传入参数index,是当前的li标签的索引值,让后函数中让当前的索引值和currentIndex的值相等,得到布尔值为true,使当前的样式为active
}
}
})
</script>
</body>
</html>