\n\n\n\n```\n\n---\n\n참고\n\n[실제 적용 예제](https://play.vuejs.org/#eNqNVc1u00AQfpXBHNJKjaPwcwlpRUFIwAEQIHGoe3DtTerW3rV216EossRPQSiAONBKBTUIpHIo4tA/iSKVF4qdd2B2Nw4pLYFcYs98s/PtfDPjtjUbx3YrIVbNqguPB7EEQWQSzzg0iGLGJbSBkwak0OAsghJCSw51qMeokBCJJkwr/0TpOglDBg8YD/0zpUmHVipQtfMXb/LV3by7Ctnb9/mnJ5DtrOXdw2xtuziBLSwRT95uzErJBZ7VdihA4NegFPhlQUJ0Ml6aUlYvdIVAh/4f+qpIJ1WMMOE5O+8eZHtb/c7hiYRQZCQtQuUtNyLTeFLgLWP8iOO6S/2Q8OlGQj0ZMDox2XbxXU5UJ4ss5wfXOuVO6L1ge0JA/8lB9nEj72zl3Q3IfrxGRoiB/Om3/MN2vvEy/7Sp0RftVlmSFTkOZti5WCDFGmuEpRmS1sWYVUZO/HKDUanlqVeMmCgjvkgSxaErCb4B1M+Uy2OlgXLZABer0CovBNSfdqxjOjkWzLTbWv00rVcWqwYf0DiRGBIxn4QYg35EVjSHQd6xChV5FxIpGYXLc0Op5m1GPWJHgY/i4MmjUjnWjDkp21vtd47qFRM+mvWvisFE73An2z9EY755lH3ehNqijEKDzr4+h4HVCNLbeZx1vvTXN7JXWzb0vqNQBfB3HQcR2f7j3t7P/jrGahlhcng9xUh3iRL9PxrlWOC/G2YI94MWNj3grzZXdM88Fq90jOhIH7zbzT53++vb2auXeMMSajcI102GkXOm26ZwJ5yYQqiB5AkBSOcdy8QZpiojit7bPQDsmTQFlcsQVqXsrPX2nvX2j3T5ukfD9FDkV/1Tr4y0cF3IR6F6ODuyIvTe8FjIeM13+TLjLm2SS3o12H9QVdAFxn3Ca1CNV0Dhm5wQCoKFgT8IKsZJoc25GohmA8AJ0zSsKUsKnMVG0LSXBKO4SDUXx/JYFAfYoLdjtUhwaGpmuymfi8vy4U1tU1XT+03HLBJv+RT7klhRNse6w4kgvEUca+iTLm8SadzX7t3Cko84cRaTENFjnHcJ3jtRHA3sSjKYqyFOs72hPwcBbd4X11YkoaK4lCKqkKnGOxZ+Iq6OufpvuuftCzoO62mlvwA9sMYL)\n\n[vue공식문서](https://ko.vuejs.org/guide/essentials/template-syntax.html#attribute-bindings)\n","publisher":{"@type":"Organization","name":"WallyLog"}}
vuejs

속성과 이벤트의 동적바인딩 및 디렉티브 사용예제

eg

1.속성을 동적바인딩하는 방법

객체명 = { id : 'id명'}

<요소명 v-bind="객체명" >

2.이벤트 동적바인딩

@[eventName]=이벤트핸들러

3.속성 동적바인딩

const attrName='속성명'

<요소명 :[attrName]="'동적으로 속성을 등록합니다'" >

4~5.css 디렉티브 / v-text 디렉티브 사용예제

(아래의 예제 직접확인)

<script setup>
import { ref } from 'vue'

const msg = ref('Hello World!')
// 1.속성을 동적 바인딩
const objectOfAttrs = {
  id: 'id-selector',
  class: 'class-selector1'
}

// 2.이벤트 동적 바인딩 
const eventName='click'
const eventHandler=function(){alert(1)}

// 3.속성 동적 바인딩
// 4.css 클래스의 디렉티브 사용예제
// 5.v-text의 디렉티브 사용예제
const attrName = 'id'
const classA = 'red-font'

</script>

<template>
  <!-- 1.속성을 동적 바인딩 -->
  <h1 v-bind="objectOfAttrs" >{{ msg }}</h1>
  <input v-model="msg" />

  <!-- 2.이벤트 동적 바인딩 -->
  <button @[eventName].once.middle="eventHandler">동적버튼</button>
  <!-- 
    .once - 이벤트가 한 번만 트리거 됨(일회용처럼).
    .left - 마우스 왼쪽 버튼으로만 이벤트가 트리거 됨.
    .right - 마우스 오른쪽 버튼으로만 이벤트가 트리거 됨.
    .middle - 마우스 중앙(힐 클릭) 버튼으로만 이벤트가 트리거 됨.
   -->

  <!-- 3.속성 동적 바인딩 (기본적으로 :html속성명 으로 사용가능하다. 그 속성명을 동적으로 변경한 예제 ) -->
  <!-- 4.css의 클래스의 디렉티브 사용예제 -->
  <!-- 5.v-text의 디렉티브 사용예제 -->
  <div 
    :[attrName]="'동적으로 속성을 등록합니다'" 
    :class="[classA, { 'class-selector1' : true  }]"
    v-text="'이건 {{ }} 을 사용하는것과 동일합니다 '" 
  />
</template>
<style>
#id-selector{
  color:darkorange;
}
.class-selector1{
 border: 1px darkgreen solid;
}
.red-font{
 color: darkred;
}
</style>

참고

실제 적용 예제

vue공식문서