본문 바로가기
Frontend/Vue 2

vue3 클래스, 스타일 바인딩

by SOLYI 2021. 10. 18.

 

//클래스 바인딩

<template>
  <h1
    :class="{ active: isActive}" 
    @click="activate">
    Hello World ( {{ isActive }} )
  </h1>
</template>

<script>
export default {
  data(){
    return{
      isActive: false
    }
  },
  methods: {
    activate(){
      this.isActive = true
    }
  }
}
</script>

<style scoped>
  .active{
    color: red;
    font-weight: bold;
  }
</style>

 

스타일 바인딩

  1. :style 부분에 직접 color:red 를 입력하는 방식
  2. fontStyle 오브젝트 입력
  3. [배열, 배열] 형식으로 입력
<template>
  <h1
    :style="[fontStyle, backgroundStyle]"
    @click="changeStyle">
    Hello My name is Solyi
  </h1>
</template>

<script>
export default {
  data(){
    return{
      // color: 'orange',
      // fontSize: '30px'
      fontStyle: {
        color:'orange',
        fontStyle: '30px'
      },
      backgroundStyle:{
        backgroundColor: 'black'
      }
    }
  },
  methods:{
    changeStyle(){
      this.fontStyle.color = 'grey',
      this.fontStyle.fontSize = '120px'
    }
  }
}
</script>
반응형

'Frontend > Vue 2' 카테고리의 다른 글

vue3 v-if / v-show  (0) 2021.10.18
vue3 v-if / v-else-if / v-else  (0) 2021.10.18
vue3 watch  (0) 2021.10.18
vue3 computed - getter setter  (0) 2021.10.18
vue3 computed 캐싱  (0) 2021.10.18