<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.activated {color: red}
</style>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
<!-- class绑定 -->
<!-- 对象绑定 -->
<div @click="handleObjBind"
:class='{activated: isActivated}'
>
Hello world
</div>
<!-- 数组绑定 activated为变量,activatedOne为常量,activatedTwo为对象 -->
<div @click="handleArrBind"
:class= "[activated, 'activatedOne', {'activatedTwo': false}]"
>
Hello world1
</div>
<!-- style绑定 -->
<div @click="handleStyleBind"
:style= "[styleObj, {fontSize: '20px'}]"
>
Hello world1
</div>
</div>
</body>
<script type="text/javascript">
let vm = new Vue({
el: '#app',
data: {
isActivated: false,
activated: '',
styleObj: {
color: 'black'
}
},
methods: {
handleObjBind () {
this.isActivated = !this.isActivated
},
handleArrBind () {
this.activated = this.activated == '' ? 'activated' : ''
},
handleStyleBind () {
this.styleObj.color = this.styleObj.color == 'lightblue' ? 'black' : 'lightblue'
}
}
})
</script>
</html>