¿Tus usuarios tienen conexión lenta? ¿Vue.js no se definió correctamente? ¿Detestas el DOM pre-render?

Pues te tengo la solución a tus problemas: ¡v-cloak!
En la lista de directivas de Vue.js encontramos v-cloak, pero puedo asegurar que muy pocas personas le prestan atención.
Lo único que hace esta directiva es desaparecer. Sí, desaparecer y ya. Cuando Vue.js es invocado se encarga, entre otras cosas, de quitar todos los v-cloak que haya dentro del elemento HTML que inicialices.
Ten en cuenta que v-cloak no se pone por defecto en todos lados, tú debes ponerla y sólo es válido en elementos dentro del que inicializas, no aplica sobre él mismo.
<div id="super-app">
<div class="results" v-cloak>
<p>About {{numResults}} results. ({{responseTime}} seconds)</p>
</div>
<p class="tip">
Tip: <span>Search for <em v-cloak>{{language}}</em> results only</span>. You can specify your search language in <a href="">Preferences</a>
</p>
</div>
<script>
let superVueApp = new Vue({
el: '#super-app',
.
.
.
})
</script>
Si esto lo combinas con una regla de CSS puedes ocultar todos los elementos que no estén listos.
[v-cloak] {
display: none;
}
¡Voilá! Con esta solución super-simple te olvidas de tener HTML que no esté listo sin pegarle al performance de tu app.
Si tienes dudas sobre Vue.js o cosas raras que te gustaría hacer y no sabes cómo, déjame un comentario para tenerlo en cuenta para los próximos Trucos de Vue.

– Enrique D.
Excelente 😉 se agradece mucho el aporte
Como cargar una data en un div que no sea a traves de JQuery $(‘#div’).html(response.data) en vue con axios. ¿Cómo seria con axios?
Excelente aporte de v-cloak… Saludos