·
0 min read
Vue Tip: Avoid Empty Class Attributes
MH
Michael Hoffmann
@mokkapps
If you want to conditionally add a class to an element in Vue, you might be tempted to use a ternary operator to check if a condition is met.
However, this can lead to an empty class attribute being rendered when the condition is false:
Component.vue
<template>
<div :class="isDisabled ? 'disabled' : null"></div>
<!-- Will render <div class></div> -->
</template>
Instead, use a falsy value like an empty string to avoid this issue:
Component.vue
<template>
<div :class="isDisabled ? 'disabled' : ''"></div>
<!-- Will render <div></div> -->
</template>
If you liked this Vue tip, follow me on BlueSky to get notified about new tips, blog posts, and more. Alternatively (or additionally), you can subscribe to my weekly Vue & Nuxt newsletter :