Cómo puedo ejecutar algún código cuando mi variable cambia.
por ejemplo: $store.state.AppStatus tiene el estado "ocupado" cuando se carga el componente vue y luego cambia a "listo"
así que necesito ejecutar la función boostrap en la pestaña después de que $store.state.AppStatus cambie a "listo"
Ahora uso setTimeout porque funciona, pero no es perfecto...
Mi gancho montado en código:
mounted() { if (window.location.hash) { console.log(this.$store.state.AppStatus) setTimeout(() => { $(`a[href="${window.location.hash}"]`).tab('show') }, 1000); } },Puede usar un Vue Watcher: https://vuejs.org/v2/guide/computed.html#Watchers
Si bien las propiedades calculadas son más apropiadas en la mayoría de los casos, hay ocasiones en las que es necesario un observador personalizado. Es por eso que Vue proporciona una forma más genérica de reaccionar a los cambios de datos a través de la opción de vigilancia. Esto es más útil cuando desea realizar operaciones asincrónicas o costosas en respuesta a datos cambiantes.
watch: { '$store.state.AppStatus': function() { $(`a[href="${window.location.hash}"]`).tab('show') } }